BACPAC ファイルのインポートによる新しいユーザー データベースの作成

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

データ層アプリケーション (DAC) ファイル (.bacpac ファイル) をインポートすると、データを含んだ元のデータベースのコピーを、データベース エンジの新しいインスタンス上または Azure SQL Database に作成することができます。 エクスポートとインポートという操作を組み合わせることで、DAC またはデータベースをインスタンス間で移行したり論理バックアップを作成したりすることが可能です。たとえば、SQL Database にデプロイされているデータベースの社内用コピーを作成することもできます。

始める前に

インポート プロセスでは、2 つの段階を経て新しい DAC が構築されます。

  1. エクスポート ファイルに格納されている DAC 定義を使用して、新しい DAC および関連するデータベースを作成します。DAC の配置時には、DAC パッケージ ファイル内の定義から新しい DAC が作成されますが、その場合と同じ方法で作成されます。

  2. エクスポート ファイルからデータを一括コピーします。

データベースのオプションと設定

既定では、インポート時に作成されたデータベースには、CREATE DATABASE ステートメントによる既定の設定がすべて適用されます。ただし、データベースの照合順序および互換性レベルは、DAC のエクスポート ファイルで定義された値に設定されます。 DAC のエクスポート ファイルには、元のデータベースに基づく値が使用されます。

TRUSTWORTHY、DB_CHAINING、HONOR_BROKER_PRIORITY など、データベース オプションによっては、インポート作業中の調整はできない場合があります。 ファイル グループの数、ファイルの数やサイズなどの物理プロパティは、インポート作業中に変更することはできません。 インポートが完了すれば、ALTER DATABASE ステートメント、SQL Server Management Studio、または SQL Server PowerShell を使用して、データベースを調整できます。 詳細については、「 Databases」を参照してください。

制限事項と制約事項

DAC は、SQL Database にインポートできるほか、SQL Server 2005 (9.x) Service Pack 4 (SP4) 以降を実行するデータベース エンジンのインスタンスにインポートすることができます。 新しいバージョンから DAC をエクスポートした場合、SQL Server 2005 (9.x) ではサポートされないオブジェクトが DAC に含まれている可能性があります。 これらの DAC を SQL Server 2005 (9.x) のインスタンスにデプロイすることはできません。

前提条件

ソースが不明または信頼されていない DAC エクスポート ファイルはインポートしないことをお勧めします。 こうしたファイルには、意図しない Transact-SQL コードを実行したり、スキーマを変更してエラーを発生させるような、悪意のあるコードが含まれている可能性があります。 エクスポート ファイルのソースが不明または信頼されていない場合は、使用する前に、DAC をアンパックして、ストアド プロシージャやその他のユーザー定義コードなどのコードも確認してください。 これらのチェックの実行方法の詳細については、「 Validate a DAC Package」をご覧ください。

セキュリティ

セキュリティを強化するために、SQL Server 認証のログインは、パスワードなしで DAC エクスポート ファイルに格納されます。 ファイルがインポートされると、ログインは、生成されたパスワードを伴う無効なログインとして作成されます。 ログインを有効にするには、ALTER ANY LOGIN 権限を持つログインとしてサインインし、ALTER LOGIN を使用してログインを有効にします。さらに、新しいパスワードを割り当て、そのパスワードを該当ユーザーに通知します。 Windows 認証ログインの場合、ログインのパスワードは SQL Server で管理されていないため、この操作は必要ありません。

アクセス許可

DAC をインポートできるのは、 sysadmin または serveradmin 固定サーバー ロールのメンバーか、 dbcreator 固定サーバー ロールに存在する ALTER ANY LOGIN 権限を持つログインのみです。 あらかじめ登録された SQL Server システム管理者アカウント sa も DAC をインポートできます。 SQL Database へのログインが含まれる DAC をインポートするには、loginmanager ロールまたは serveradmin ロールのメンバーシップが必要です。 SQL Database へのログインが含まれない DAC をインポートするには、dbmanager ロールまたは serveradmin ロールのメンバーシップが必要です。

データ層アプリケーションのインポート ウィザードの使用

ウィザードを起動するには、次の手順を実行します。

  1. オンプレミスでも SQL Database でも、SQL Server のインスタンスに接続します。

  2. オブジェクト エクスプローラーで、 [データベース]を右クリックしてから、 [データ層アプリケーションのインポート] メニュー項目を選択してウィザードを起動します。

  3. ウィザードの各ダイアログの手順を実行します。

[説明] ページ

このページには、データ層アプリケーションのインポート ウィザードの手順が表示されます。

[オプション]

  • [次回からこのページを表示しない] : 今後 [説明] ページを表示しないようにするには、このチェック ボックスをオンにします。

  • [次へ]: [インポートの設定] ページに進みます。

  • [キャンセル]: 操作を取り消し、ウィザードを閉じます。

[インポートの設定] ページ

このページを使用して、インポートする .bacpac ファイルの場所を指定します。

  • [ローカル ディスクからインポート]: [参照] を選択してローカル コンピューター内を参照するか、用意されている領域にパスを指定します。 パス名には、ファイル名および .bacpac 拡張子を含める必要があります。

  • [Import from Azure]\(Azure からインポート\): BACPAC ファイルを Microsoft Azure コンテナーからインポートします。 このオプションを検証するには、Microsoft Azure コンテナーに接続する必要があります。 [Import from Azure]\(Azure からインポート\) オプションでは、一時ファイル用のローカル ディレクトリを指定する必要もあります。 一時ファイルは、指定した場所に作成され、操作の完了後も残ります。

    Azure を参照するときに、1 つのアカウント内のコンテナーを切り替えることができます。 インポート操作を続行するには、1 つの .bacpac ファイルを指定する必要があります。 列は、名前サイズ、または更新日時で並べ替えることができます。

    続行するには、インポートする .bacpac ファイルを指定し、 [開く]を選択します。

[データベースの設定] ページ

このページを使用すると、作成されるデータベースの詳細を指定できます。

SQLServer のローカル インスタンスの場合

  • [新しいデータベース名]: インポートするデータベースの名前を指定します。

  • [データ ファイルのパス]: データ ファイル用のローカル ディレクトリを指定します。 [参照...] を選択してローカル コンピューター内を参照するか、用意されている領域にパスを指定します。

  • [ログ ファイルのパス]: ログ ファイル用のローカル ディレクトリを指定します。 [参照...] を選択してローカル コンピューター内を参照するか、用意されている領域にパスを指定します。

続けるには、 [次へ] を選択します。

Azure SQL データベースの場合

[検証] ページ

このページを使用して、操作の妨げとなる問題を確認します。 続行するには、妨げとなる問題を解決し、 [検証の再実行] を選択して、検証が成功したことを確認します。

続けるには、 [次へ] を選択します。

[概要] ページ

このページを使用すると、操作の指定ソースとターゲットの設定を確認できます。 指定した設定でインポート操作を実行するには、 [完了]を選択します。 インポート操作をキャンセルしてウィザードを終了するには、 [キャンセル]を選択します。

[進行状況] ページ

このページには、操作の進行状況を示す進行状況バーが表示されます。 詳細な状態を表示するには、 [詳細表示] を選択します。

続けるには、 [次へ] を選択します。

[結果] ページ

このページでは、データベースのインポートや作成操作の成功と失敗が報告され、各アクションの成功または失敗が示されます。 エラーが発生したアクションには、 [結果] 列にリンクが表示されます。 そのアクションのエラーのレポートを表示するには、リンクをクリックします。

[閉じる] を選択してウィザードを閉じます。

関連項目