sql >> データベース >  >> RDS >> Database

サンプルDWデータベースAdventureWorksDW2019の復元

    場合によっては、さまざまなテストのニーズや学習目的のために、必要なすべてのオブジェクトとデータベース内の大量のデータセットを含むサンプルデータベースが必要になります。 Microsoftは、OLTPワークロード用のAdventureWorksデータベースやデータウェアハウスワークロード用のAdventureWorksDWデータベースなど、ワークロードのタイプごとにいくつかのサンプルデータベースを開発しました。

    ここでは、SQLServerデータウェアハウスのサンプルデータベースAdventureWorksDWを作成またはインストールするためのさまざまなアプローチを紹介します。この記事では、このデータベースAdventureWorksDW2019の最新バージョンを使用します。

    2つの方法のいずれかを使用して、サンプルデータベースAdventureWorksDW2019をインストールできます。

    1. バックアップファイルを使用してAdventureWorksDW2019を復元する
    2. T-SQLスクリプトを使用してAdventureWorksDW2019データベースを作成する

    この記事では、バックアップファイルを使用してこのデータベースを復元するための両方のアプローチ(GUIとT-SQL)について説明します。バックアップファイルを使用してこのデータベースを復元する最初の方法から始めましょう。

    バックアップファイルを使用したAdventureWorksDW2019データベースの復元

    このセクションでは、GUIおよびT-SQLステートメントを使用したバックアップファイルを使用したサンプルデータベースAdventureWorksDW2019の復元について説明します。このインストールを開始するための最初のステップは、このリンクに従ってバックアップファイルをダウンロードすることです。 。

    バックアップファイルのそれぞれのバージョンをクリックすると、画面の下部に以下のポップアップが表示され、正しい場所を選択できます。 Sをクリックします ave ボタンをクリックしてダウンロードプロセスを開始します。

    バックアップファイルがダウンロードされると、下のポップアップに下の画像のように表示されます。

    これで、SQLServerデータウェアハウスのサンプルデータベースAdventureWorksDW2019のバックアップファイルがダウンロードされました。次のステップは、このバックアップファイルをターゲットSQLServerインスタンスに復元することです。

    GUIを使用したバックアップファイルの復元

    このセクションでは、サンプルデータベースを復元するためのGUIアプローチについて説明します。他のSQLServerデータベースの場合と同様に、簡単に復元できます。 SQL ServerManagementStudioを起動します。データウェアハウスのサンプルデータベースAdventureWorksDW2019を復元するターゲットSQLServerインスタンスに接続します。下の画像でターゲットインスタンスに接続しました。

    データベースを右クリックします フォルダをクリックし、データベースの復元…をクリックします 下の画像に示すオプション。

    以下のデータベースの復元が表示されます データベースの復元…をクリックした後のウィンドウ 上のスクリーンショットのオプション。下の画像のソースセクションに示されている2番目のオプションを選択します。 デバイスの横にあるラジオボタンをクリックします 。このオプションをクリックすると、下の画像で灰色で表示されている3つのドットが付いたタブが有効になり、バックアップファイルを選択できます。

    下の画像の青い長方形で示されているデバイスの3つのドットをクリックして、バックアップメディアを選択します。上記のセクションでダウンロードしたバックアップファイルを選択するには、以下の画面が表示されます。指示に従ってバックアップファイルを選択します。

    ここでは、ダウンロードしたバックアップファイルを下の画像で確認できます。このファイルを選択して、サンプルデータベースを復元します。このバックアップファイルを選択し、 OKをクリックします ボタンをクリックして続行します。

    バックアップファイルを選択すると、データベースに関連するすべての詳細がバックアップファイルの助けを借りて自動入力されます。すべての詳細を確認し、必要に応じて変更を加える必要があります。ここでは、このデータベースを同じ名前で復元する必要があるため、すべてをそのままにしておきます。

    ファイルをクリックします タブをクリックして、このデータベースを正しい場所に復元しているかどうかを確認します。データベースファイルの場所を変更する場合は、ここで変更できます。詳細を確認し、すべてが正常に見える場合は、 OKをクリックします ボタンをクリックして復元を続行します。

    データベースを見ることができますAdventureWorksDW2019 下の画像では正常に復元されています。 OKをクリックします ボタンをクリックして復元ウィンドウを閉じます。

    この新しく作成されたデータベースにアクセスすることで、この復元を検証できます。下の画像では、このデータベースに非常にアクセスしやすいことがわかります。オブジェクトエクスプローラーですべてのオブジェクトを確認できます。

    このデータベースをクラウド内のAzureSQLデータベースに展開またはコピーする場合でも、次の方法で実行できます。データベースをMicrosoftAzureSQLデータベースに展開する… タスクの下にあるオプション 次の図に示すように、復元されたデータベースを右クリックすると表示されるオプション。あなたはただそのウィンドウによって提案された残りの指示に従う必要があります。 Azure SQLデータベースに接続するように求められたら、展開が開始されます。

    T-SQLを使用したデータベースの復元

    T-SQLステートメントを使用してサンプルデータベースAdventureWorksDW2019を復元することもできます。上記のセクションでバックアップファイル*.bakをダウンロードしたので。次に、バックアップファイルのヘッダー情報を読み取り、以下のT-SQLステートメントを使用してデータベースファイル名を取得します。

    --Run below statements to read database logical file names and other backup header information
    RESTORE FILELISTONLY 
    FROM DISK =N'C:\19June2021\Sample-DW\AdventureWorksDW2019.bak' 
     

    バックアップヘッダー情報にアクセスしている間、データベースの詳細を以下に示します。 RESTORE DATABASEコマンドを実行するには、その論理ファイル名が必要です。また、この場所がターゲットデータベースファイルの場所に適していない場合は、その物理ファイル名に注目してください。RESTOREステートメントでMOVE句を使用してください。

    次に、以下のRESTORE DATABASEコマンドを実行して、ターゲットインスタンスのサンプルデータベースを復元します。 MOVE句で指定されたデータベースファイルの場所を必ず変更してください。

    --Restore Sample Database AdventureWorksDW2019
    USE [master]
    RESTORE DATABASE [AdventureWorksDW2019] 
    FROM DISK = N'C:\19June2021\Sample-DW\AdventureWorksDW2019.bak' 
    WITH MOVE 'AdventureWorksDW2017' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019.mdf',
    MOVE 'AdventureWorksDW2017_log' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019_log.ldf',
    FILE = 1, NOUNLOAD, STATS = 5
    GO

    上記のコマンドは、下の画像のサンプルデータベースAdventureWorksDW2019を復元しました。

    GUIメソッドを使用して同じ名前でこのサンプルデータベースを既に復元している場合、同じ名前または別の名前を使用して復元する場合は、そのデータベースを削除できます。ここでは、この復元を正常に実行するために、データベース名とそのファイルを変更しました。

    --Restore sample database using different Name
    USE [master]
    RESTORE DATABASE [AdventureWorksDW2019-TSQL] 
    FROM  DISK = N'C:\MSSQL\AdventureWorksDW2019.bak' 
    WITH MOVE 'AdventureWorksDW2017' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019-TSQL.mdf',
    MOVE 'AdventureWorksDW2017_log' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019TSQL_log.ldf',
    FILE = 1,  NOUNLOAD,  STATS = 5
    GO

    ここで、復元されたデータベースAdventureWorksDW20119を検証できます。 sp_helpdbコマンドを実行して詳細を取得しました。下の画像で、このデータベースにアクセスできることがわかります。

    -- Check DB details
    sp_helpdb AdventureWorksDW2019

    上記のセクションで、サンプルデータベースAdventureWorksDW2019を復元するための2つのアプローチを示しました。

    T-SQLスクリプトを使用したAdventureWorksDW2019データベースの作成

    バックアップファイル*.bakを使用してサンプルデータベースを復元したくない、または復元できない場合は、T-SQLスクリプトを使用してサンプルデータベースを取得する別のオプションがあります。 Microsoftは、構造を持つすべてのデータベースオブジェクトを含むサンプルデータベースAdventureWorksDW20119を作成するマスターT-SQLスクリプトを提供しました。このスクリプトは、すべてのテーブルに実際のデータをロードします。このセクションでは、T-SQLスクリプトを使用してこのデータベースを作成できます。

    添付のMSDNリンクを開きます サンプルデータベースにロードされるすべてのスクリプトとデータシートをダウンロードします。このMSDNページの作成スクリプトセクションに移動します。次の画像に示すように、2つのダウンロードリンクが表示されます。 1つはOLTPワークロード用で、もう1つはデータウェアハウスワークロード用です。データウェアハウスワークロード用のサンプルデータベースをインストールする必要があるため、下の画面で強調表示した2番目のリンクの下に添付されているファイルもダウンロードします。

    このファイルをダウンロードして保存するために、画面の下部に以下のポップアップウィンドウが表示されます。適切な場所を選択して、これらのファイルを保存してください。

    上記のファイルを保存した場所に移動します。次の画像に示すように、ダウンロードされたzipファイルが表示されます。次のステップは、このzipファイルを右クリックして、ここで解凍または解凍して解凍することです。

    解凍後、以下の画面でzipファイルの下にあるすべてのファイルを確認できます。 「instawdbdw」という名前のSQLファイルが1つあります。 実際のデータがある複数のCSVファイル。このSQLスクリプトを実行して、データベースとそのすべてのオブジェクトを作成し、実際のデータをデータベースにロードします。

    SQL ServerManagementStudioでSQLServerインスタンスに接続します。 ファイルをクリックします タブをクリックし、[開く]をクリックします 、ファイル…を選択します 上記のSQLファイルを選択してSQLServerで実行するオプション。

    ここでダウンロードしたSQLファイルを選択します。 開くをクリックします ボタンをクリックして、SQL ServerManagementStudioの新しいクエリウィンドウで開きます。

    ここでは、新しいクエリウィンドウにSQLスクリプトが表示されます。このスクリプトが正常に実行されるように、スクリプトのコメント行をすべて読んでください。以下の画像にいくつかの必須の前提条件が示されています。このスクリプトを実行する前に、必ずそれらすべてに従うようにしてください。以下は、これらの前提条件のリストです。

    • SQLServerインスタンスで全文検索を有効にする
    • クエリはSQLCMDモードで実行する必要があります
    • このスクリプトで指定されたパスを、スクリプトを保存した目的のパスに変更するか、スクリプトを以下に示す場所にコピーします。

    SQL Serverインスタンスの全文検索を既に有効にしているので、最初のオプションで問題ありません。 2番目のオプションは、SQLCMDモードをクリックして実行できるSQLCMDを有効にすることです。 クエリの 下の画像に示すようにタブ。すべてのファイルを保存したスクリプトの場所のパスをすでに変更しました。

    次に、上記のコマンドを実行します。

    次の画像で、このスクリプトの実行を確認できます。スクリプトの実行の進行状況は、すべてのアクションが明確に示されている出力セクションで確認できます。

    次に、上記のスクリプトが正常に実行されたら、下の画像で新しく作成されたデータウェアハウスサンプルデータベースAdventureWorksDWを検証できます。すべてのオブジェクトが作成されたことがわかります。

    結論

    この記事では、複数の方法を使用してデータウェアハウスのサンプルデータベースAdventureWorksDWを作成およびインストールする方法を説明しました。この記事に従って、ビジネスニーズに合わせてサンプルデータベースを復元できます。データベースのバックアップを作成し、dbForge Studio forSQLServerを使用してバックアップからサンプルデータベースを復元することもできます。改善できるように、この記事を共有してフィードバックをお寄せください。


    1. MySQLはデータベースのユーザーに特権を付与します

    2. SQL Serverでsp_dependsを使用しないでください(非推奨)

    3. 修正:SQL Server(およびSQL Edge)の「リカバリモデルがSIMPLEである間は、ステートメントBACKUPLOGは許可されません」

    4. SQLite IN