AdventureWorks サンプル データベースを Azure Arc 対応 PostgreSQL サーバーにインポートする

AdventureWorks は、チュートリアルで使用される OLTP データベースと例を含むサンプル データベースです。 SQL Server サンプル GitHub リポジトリの一部として、Microsoft によって提供および管理されています。

オープンソース プロジェクトによって、AdventureWorks データベースが Azure Arc 対応 PostgreSQL サーバーとの互換性を備えるように変換されました。

このドキュメントでは、AdventureWorks サンプル データベースを Azure Arc 対応 PostgreSQL サーバーにインポートするための簡単なプロセスについて説明します。

Note

この記事で紹介しているテクノロジはプレビュー機能であり、「Microsoft Azure プレビューの追加利用規約」に従うことを条件として提供されます。

最新の更新プログラムについては、リリース ノートを参照してください。

AdventureWorks のバックアップ ファイルをダウンロードする

AdventureWorks の .sql ファイルを PostgreSQL サーバー コンテナーにダウンロードします。 この例では、kubectl exec コマンドを使用して、PostgreSQL サーバー コンテナー内のコマンドをリモートで実行し、ファイルをコンテナーにダウンロードします。 このファイルは、curl がアクセスできる任意の場所からダウンロードできます。 他のデータベースのバックアップ ファイルを PostgreSQL サーバー コンテナーにプルする場合、これと同じ方法を使用します。 PostgreSQL サーバー コンテナーでは、データベースとスキーマを簡単に作成し、データを設定することができます。

次のようなコマンドを実行して、ファイルをダウンロードします。実行する前にポッド名と名前空間名の値を置き換えます。

Note

GitHub からファイルをダウンロードするには、コンテナーが 443 経由でインターネットに接続されている必要があります。

Note

PostgreSQL サーバーのコーディネーター ノードのポッド名を使用します。 その名前は <server group name>c-0 です (postgres01c-0 など。c はコーディネーター ノードを表します)。 ポッド名がわからない場合は、kubectl get pod コマンドを実行します。

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres  -- /bin/bash -c "cd /tmp && curl -k -O https://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

#Example:
#kubectl exec postgres02-0 -n arc -c postgres -- /bin/bash -c "cd /tmp && curl -k -O hthttps://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

AdventureWorks データベースをインポートする

同様に、kubectl exec コマンドを実行して、PostgreSQL サーバー コンテナーに含まれている psql CLI ツールを使用し、データベースを作成して読み込むことができます。

次のようなコマンドを実行して、最初に空のデータベースを作成します。そのためには、まずポッド名と名前空間名の値を置き換えてから実行します。

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

その後、次のようなコマンドを実行してデータベースをインポートします。そのためには、まずポッド名と名前空間名の値を置き換えてから実行します。

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

推奨される次の手順