次の方法で共有


レッスン 4:Azure Storage にデータベースを作成する

このレッスンでは、Azure のデータ ファイルのSQL Server機能を使用してデータベースを作成する方法について説明します。 このレッスンの前に、レッスン 1、2、および 3 を完了する必要があることに注意してください。 レッスン 3 は、レッスン 4 の前に、Azure ストレージ コンテナーに関する情報とそれに関連付けられているポリシー名と SAS キーをSQL Server資格情報ストアに格納する必要があるため、非常に重要な手順です。

データ ファイルまたはログ ファイルによって使用されるストレージ コンテナーごとに、名前がコンテナーのパスに一致する SQL Server 資格情報を作成する必要があります。 その後、Azure Storage で新しいデータベースを作成できます

このレッスンでは、次の手順を既に完了していることを前提としています。

  • Azure Storage アカウントを持っている。

  • Azure Storage アカウントの下にコンテナーを作成しました。

  • 読み取り、書き込み、一覧表示の権限のあるコンテナーに対するポリシーを作成しました。 SAS キーも生成しました。

  • ソース コンピューターで SQL Server 資格情報を作成しました。

Azure Storage のデータ ファイルのSQL Server機能を使用して Azure にデータベースを作成するには、次の手順に従います。

  1. SQL Server Management Studio に接続します。

  2. オブジェクト エクスプローラーで、インストールしたデータベース エンジンのインスタンスに接続します。

  3. [標準] ツール バーの [新しいクエリ]をクリックします。

  4. 次の例をコピーしてクエリ ウィンドウに貼り付け、必要に応じて変更します。 FILENAME フィールドがストレージ コンテナーにあるデータベース ファイルの URI パスを指し、先頭は https にする必要があることに注意してください。

    
    --Create a database that uses a SQL Server credential    
    CREATE DATABASE TestDB1    
    ON   
    (NAME = TestDB1_data,   
       FILENAME = 'https://teststorageaccnt.blob.core.windows.net/testcontainer/TestDB1Data.mdf')   
     LOG ON   
    (NAME = TestDB1_log,   
        FILENAME = 'https://teststorageaccnt.blob.core.windows.net/testcontainer/TestDB1Log.ldf')   
    GO  
    
    

    データベースにデータを追加します。

    
    USE TestDB1;   
    GO   
    CREATE TABLE Table1 (Col1 int primary key, Col2 varchar(20));   
    GO   
    INSERT INTO Table1 (Col1, Col2) VALUES (1, 'string1'), (2, 'string2');   
    GO  
    
    
  5. 内部設置型 SQL Server の新しい TestDB1 を表示するには、オブジェクト エクスプローラーでデータベースの表示を更新します。

  6. 同様に、ストレージ アカウントに新しく作成したデータベースを表示するには、SQL Server Management Studio (SSMS) 経由でストレージ アカウントに接続します。 SQL Server Management Studioを使用して Azure ストレージに接続する方法については、次の手順に従います。

    1. まず、ストレージ アカウント情報を取得します。 管理ポータルにログインします。 次に、[ ストレージ ] をクリックし、ストレージ アカウントを選択します。 ストレージ アカウントを選択したら、ページの下部にある [ アクセス キーの管理 ] をクリックします。 次のようなダイアログ ウィンドウが開きます。

      SQL 14 CTP2

    2. [ストレージ アカウント名] と [プライマリ アクセス キー] の値を SSMS の [Azure Storage への接続] ダイアログ ウィンドウにコピーします。 次に、 [接続] をクリックします。 これで、次のスクリーン ショットに示すように、ストレージ アカウント コンテナーについての情報が SSMS に表示されます。

      SQL 14 CTP2

次のスクリーンショットは、オンプレミス環境と Azure Storage 環境の両方で新しく作成されたデータベースを示しています。

SQL 14 CTP2

メモ:コンテナー内のデータ ファイルへのアクティブな参照がある場合、関連付けられているSQL Server資格情報を削除しようとすると失敗します。 同様に、既に BLOB の特定のデータベース ファイルにリースが設定されていて、そのデータベースを削除する場合、まず、BLOB のリースを解除する必要があります。 リースを解除するには、 リース BLOB を使用できます。

この新しい機能を使用して、CREATE DATABASE ステートメントの既定値がクラウド対応データベースになるように、SQL Server を構成できます。 つまり、SQL Server Management Studio Server インスタンスのプロパティで既定のデータとログの場所を設定できるため、データベースを作成するたびに、すべてのデータベース ファイル (.mdf、.ldf) が Azure Storage のページ BLOB として作成されます。

ユーザー インターフェイスを使用して Azure Storage にデータベースSQL Server Management Studio作成するには、次の手順を実行します。

  1. オブジェクト エクスプローラーで、 SQL Server データベース エンジン のインスタンスに接続し、そのインスタンスを展開します。

  2. [データベース] を右クリックし、[新しいデータベース] をクリックします。

  3. [新しいデータベース] ダイアログ ウィンドウで、データベース名を入力します。

  4. プライマリ データ ファイルとトランザクション ログ ファイルの既定値を変更します。[データベース ファイル] グリッドで該当するセルをクリックして、新しい値を入力します。 また、ファイルの場所のパスも指定します。 パスとしては、ストレージ コンテナーの URL パスを入力します (たとえば、https://teststorageaccnt.blob.core.windows.net/testcontainer/)。 ファイル名としては、データベース ファイル (.mdf、.ldf) の物理ファイル名を入力します。

    SQL 14 CTP2

    詳細については、「 データベースに対するデータ ファイルまたはログ ファイルの追加」をご覧ください。

  5. その他の値は既定値のままにします。

  6. [OK] をクリックします。

内部設置型 SQL Server の新しい TestDB1 を表示するには、オブジェクト エクスプローラーでデータベースの表示を更新します。 同様に、ストレージ アカウントに新しく作成したデータベースを表示するには、このレッスンの前の方で説明したように、SQL Server Management Studio (SSMS) 経由でストレージ アカウントに接続します。

次のレッスン:

レッスン 5: (省略可) TDE を使用してデータベースを暗号化する