SQL Server のことなら SQL Quality SQL Server パフォーマンス チューニング、コンサルティング、アドバイス、相談、定期診断、トレーニング

ホーム > 技術情報 > SQL Server 2014 自習書 No.5 Microsoft Azure SQL Database 入門

SQL Server 2014 自習書シリーズ (HTML 版)
「No.5 Microsoft Azure SQL Database 入門」

松本美穂と松本崇博が執筆した SQL Server 2014 自習書シリーズの「No.5 Microsoft Azure SQL Database 入門」の HTML 版です。 日本マイクロソフトさんの Web サイトで Word または PDF 形式でダウンロードできますが、今回、HTML 版として公開する許可をいただきましたので、ここに掲載いたします。[2015年12月29日]

目次へ | 前のページへ | 次のページへ

4.3 SSIS ウィザードでのテーブル データの移行

(2015年1月時点での情報)

Azure SQL Database では、通常の SQL Server と同様、Integration Services(SSIS)の SQL Server インポートおよびエクスポート ウィザード(以降、SSIS ウィザードと記述を利用してデータのインポート/エクスポートを行うことができます。

SSIS ウィザードは、データベース丸ごとではなく、特定のテーブルのデータのみを移行したい場合に便利で、筆者もよく利用しています。ただし、データ サイズが数GBレベルになる場合は、SSIS ウィザードは、bcp コマンドや DAC Fx(.bacpac)に比べて転送速度が遅くなるので、お勧めではありません。SSIS ウィザードは、数万件程度のデータを移行する場合にお勧めの方法になります。

◆ Let's Try

それでは、これを試してみましょう。ここでは、SSIS ウィザードを利用して、NorthwindJ データベース内の「商品」テーブルを、Azure SQL Database 上に移行してみましょう。

1.SSIS ウィザードを利用するには、次のように Management Studio で「NorthwindJ」データベースを右クリックして、[タスク]メニューの[データのエクスポート]をクリックします(これは、SQL Server 2008 以降の Management Studio であれば、同じように操作することができます)。

00288

これにより、[SQL Server インポートおよびエクスポート ウィザード]が起動するので、[次へ]ボタンをクリックします。

2.次の[データ ソースの選択]ページでは、次のように[データ ソース]で「SQL Server Native Client 11.0」を選択します。

00289

サーバー名]に移行元となる SQL Server の名前を入力(画面は MATUMO)、[認証]で[Windows 認証を使用する]を選択、[データベース]で「NorthwindJ」を選択して、[次へ]ボタンをクリックします。

3.次の[変換先の選択]ページでは、次のように[変換先]で「.Net Framework Data Provider for SqlServer」を選択します。

00290

Encrypt]で「True」を選択、[Data Source]に Azure SQL Database の SQL サーバー名(画面は matusrv1.database.~)、[Initial Catalog]に移行先となるデータベースの名前(画面は AzureDB)、[User ID]に管理者アカウントの名前(画面は matumoto)、[Password]に管理者アカウントのパスワードを入力して、[次へ]ボタンをクリックします。[Encrypt]の「True」は必須ではありませんが、これを指定することで、暗号化接続を利用することができます。

なお、SQL Server 2008 や 2008 R2 などの古いバージョンの SSIS ウィザードを利用している場合は、管理者アカウントの名前を「アカウント名@サーバー名」(matumoto@matu srv1 のように matusrv1.database.windows.net の先頭部分付けて指定する必要があります。

Note:SQL Server Native Client 11.0は使用することも可能(暗号化接続なし)
SQL Server 2014 の SSIS ウィザードを利用している場合は、[変換先]に、次のように「SQL Server Native Client 11.0」を選択しても、データの移行を行うことができます。
00291
ただし、この接続方法では、暗号化接続を利用することができないので、本文中の手順のように、「.Net Framework Data Provider for SqlServer」を利用することをお勧めします。

4.次の[テーブルのコピーまたはクエリの指定]ページでは、[1つ以上のテーブルまたはビューからデータをコピーする]を選択して、[次へ]ボタンをクリックします。

00292

5.次の[コピー元のテーブルおよびビューを選択]ページでは、[変換元]で「[dbo].[商品]」をチェックして、「商品」テーブルをコピーするようにします。

00293

ここでは、[マッピングの編集]ボタンをクリックすると、次のように[列マッピング]ダイアログが表示されて、移行先で作成されるテーブルの列名などを確認/変更することができます。

00294

作成されるテーブルは、既定では PRIMARY KEY が付与されていませんが、今回は何も変更せずに、[コピー元のテーブルおよびビューを選択]ページへ戻って[次へ]ボタンをクリックし、次のページへ進みます。

Note: PRIMARY KEY を付与する場合
列マッピング]ダイアログでは、次のように PRIMARY KEY を付与したテーブルに変更することも可能です。
00295
なお、既に、移行先にテーブルが作成済みである場合は、そのテーブルを選択して、データの移行のみを行うこともできます。

6.次の[パッケージの保存および実行]ページでは、[すぐに実行する]を選択して、[次へ]ボタンをクリックします。

00296

7.次の[ウィザードの完了]ページでは、[完了]ボタンをクリックすると、データの転送(エクスポート)が開始されます。

00297

8.データの転送中は、次のように進行状況が表示されます。

00298

Note: Version 11 の場合のエラー
Azure SQL Database の Version 11 を利用している場合には、データの転送中に、次のようにエラーが発生します。
00299
Version 11 では、データを追加するために、クラスター化インデックスが必須になるので、本文中の手順のように PRIMARY KEY を作成していない場合は、このようにデータの転送エラーになります。これを回避するには、前述の Note「PRIMARY KEY を付与する場合」のように、テーブルの作成時に PRIMARY KEY を付与するようにします。

次のように、[状態]がすべて「成功」と表示されれば、データの転送が完了です。

00300

閉じる]ボタンをクリックしてウィザードを終了します。

9.Azure SQL Database の SQL サーバーに接続して、転送されたテーブルを参照すると、次のようにデータが正しく移行されていることを確認できます。

00301

このように、Azure SQL Database でも、通常の SQL Server と同様の操作で、Integration Servicesを利用したデータ転送を行うことができます。なお、Integration Services については、SQL Server 2012 の自習書シリーズの「Integration Services 入門」および「Integration Services 応用」編で詳しく説明しているので、こちらもぜひご覧いただければと思います。

目次へ | 前のページへ | 次のページへ

事例1

MPNロゴ


SQLQualityは執筆とセミナーを通じて技術の啓蒙やエンジニアの育成支援も行っています
最新刊
SQL Server 2012 の教科書
SQL Server 2012 の教科書(ソシム)

弊社オリジナル制作の
SQL Server 2012 自習書も
マイクロソフトのサイトで公開中!
ロングセラー
ASP.NET でいってみよう  SQL Server 2000 でいってみよう
ASP.NET でいってみよう
第7刷 16,500 部発行
SQL Server 2000 でいってみよう
第12刷 28,500 部発行


セミナー風景
セミナー風景

弊社執筆の
SQL Server 2012 自習書
マイクロソフトのサイトで公開中
全30冊
ダウンロードはこちら
弊社執筆の
SQL Server 2008 R2 自習書
マイクロソフトのサイトで公開中
全30冊
目次はこちら
松本美穂のコラム
(公開活動などのお知らせ)

第 51 回:PASS Summit と MVP Summit で進化を確信!
第 50 回:新しくなった Power BI(2.0)の自習書を作成しました!
第49 回:Excel 2016 の Power Query を使う
第 48 回:新しくなった Microsoft Power BI ! 無料版がある!!
第 47 回:「Microsoft Azure SQL Database 入門」 完成&公開!
第 46 回:Microsoft Power BI for Windows app からの Power BI サイト アクセス
第 45 回:Power Query で取得したデータを PowerPivot へ読み込む方法と PowerPivot for Excel 自習書のご紹介
第44回:「SQL Server 2014 への移行とアップグレードの実践」ドキュメントを作成しました
第43回:SQL Server 2014 インメモリ OLTP 機能の上級者向けドキュメントを作成しました
第42回:Power Query プレビュー版 と Power BI for Office 365 へのクエリ保存(共有クエリ)
第41回:「SQL Server 2014 CTP2 インメモリ OLTP 機能の概要」自習書のお知らせです
第40回: SQL Server 2012 自習書(HTML版)を掲載しました
第39回: Power BI for Office 365 プレビュー版は試されましたか?
第38回: SQL Server 2014 CTP2 の公開
第37回: SQL Server 2014 CTP1 の自習書をご覧ください
第36回: SQL Server 2014 CTP1 のクラスター化列ストア インデックスを試す
第35回: SQL Server 2014 CTP1 のインメモリ OLTP の基本操作を試す
第34回: GeoFlow for Excel 2013 のプレビュー版を試す
第33回: iPad と iPhone からの SQL Server 2012 Reporting Servicesのレポート閲覧
第32回: PASS Summit 2012 参加レポート
第31回: SQL Server 2012 Reporting Services 自習書のお知らせ
第30回: SQL Server 2012(RTM 版)の新機能 自習書をご覧ください
第29回: 書籍「SQL Server 2012の教科書 開発編」のお知らせ
第26回: SQL Server 2012 の Power View 機能のご紹介
第25回: SQL Server 2012 の Data Quality Services
第24回: SQL Server 2012 自習書のご案内と初セミナー報告
第23回: Denali CTP1 が公開されました
第22回 チューニングに王道あらず
第21回 Microsoft TechEd 2010 終了しました
第20回 Microsoft TechEd Japan 2010 今年も登壇します
第19回 SQL Server 2008 R2 RTM の 日本語版が公開されました
第18回 「SQL Azure 入門」自習書のご案内
第17回 SQL Server 2008 自習書の追加ドキュメントのお知らせ
第16回 SQL Server 2008 R2 自習書とプレビュー セミナーのお知らせ
第15回 SQL Server 2008 R2 Reporting Services と新刊のお知らせ
第14回 TechEd 2009 のご報告と SQL Server 2008 R2 について
第13回 SQL Server 2008 R2 の CTP 版が公開されました
第12回 MVP Summit 2009 in Seattle へ参加

技術コミュニティでも活動中

Microsoft MVP for SQL Server

松本美穂松本崇博

松本崇博 Blog(SQL Server Tips)
松本美穂ブログ(SQL Serverノート)