このページでは、pg_dump
ツールを使用して AlloyDB データベースをカスタム形式のアーカイブ DMP ファイルにエクスポートし、後で pg_restore
ツールを使用してインポートする方法について説明します。
エクスポートを実行する手順は次のとおりです。
DMP ファイルを保存する Cloud Storage バケットを作成します。
エクスポート オペレーションを実行するクライアント ホストを準備します。
DMP ファイルにデータベースをエクスポートします。
手順を実行するために作成したリソースをクリーンアップします。
始める前に
- 使用している Google Cloud プロジェクトで、オーナー(
roles/owner
)または編集者(roles/editor
)の基本 IAM ロールが必要です。または、次の事前定義された IAM ロールが必要です。- AlloyDB 管理者(
roles/alloydb.admin
)または AlloyDB 閲覧者(roles/alloydb.viewer
) - Storage 管理者(
roles/storage.admin
) - Compute インスタンス管理者(v1)(
roles/compute.instanceAdmin.v1
)
- AlloyDB 管理者(
Cloud Storage バケットを作成する
AlloyDB データベースが存在するプロジェクトとリージョンに Standard Storage のリージョン ストレージ バケットを作成します。
クライアント ホストを準備する
エクスポート オペレーションを実行するクライアントホストを準備するには、データベースが配置されている AlloyDB プライマリ インスタンスに接続できる Compute Engine VM を作成し、その VM に pg_dump
ツールと Google Cloud CLI をインストールします。
psql クライアントをインスタンスに接続するの手順に沿って、適切な接続と
pg_dump
ツールがインストールされた Compute Engine VM を作成します。次の手順を行う場合は、作成する DMP ファイルに対応できる十分なローカル ストレージを Compute Engine VM に割り当ててください。gcloud CLI をインストールして、コマンドラインから Cloud Storage バケットに DMP ファイルを作成できるようにします。
データベースをエクスポートする
データベースを DMP ファイルにエクスポートするには、データベースが存在する AlloyDB プライマリ インスタンスの IP アドレスを取得し、pg_dump
ツールを使用します。
- 詳細を表示して、データベースが存在する AlloyDB プライマリ インスタンスの IP アドレスを取得します。
- Compute Engine VM に SSH 接続します。
- Google Cloud コンソールで、[VM インスタンス] ページに移動します。
- 仮想マシン インスタンスのリストで、作成したインスタンスの行にある [SSH] をクリックします。
gcloud compute ssh
コマンドを使用して、作成したインスタンスに接続します。gcloud compute ssh --project=
PROJECT_ID --zone=ZONE VM_NAME 次のように置き換えます。
PROJECT_ID
: インスタンスが含まれているプロジェクトの ID。ZONE
: インスタンスが存在するゾーンの名前。VM_NAME
: インスタンスの名前。
- データベースを DMP ファイルにエクスポートします。
pg_dump -h
IP_ADDRESS -U postgres -F custom \DB_NAME >DMP_FILE_NAME postgres
ユーザーのパスワードを入力するよう求められます。IP_ADDRESS
: プライマリ インスタンスの IP アドレス。-F custom
: DMP ファイルの形式をカスタム形式のアーカイブに設定します。このアーカイブは、後でpg_restore
ツールを使用してインポートできます。DB_NAME
: エクスポートするデータベースの名前。DMP_FILE_NAME
: クライアント ホストのローカル ファイル システムに作成する DMP ファイルのファイル名を指定します。
上記は、単純な
pg_dump
コマンドを示しています。このコマンドがサポートする幅広いオプションについては、PostgreSQL のドキュメントをご覧ください。 - DMP ファイルを、前に作成した Cloud Storage バケットにコピーします。
gcloud storage cp
DMP_FILE_NAME gs://BUCKET_NAME
リソースのクリーンアップ
DMP ファイルのエクスポートが正常に完了したら、エクスポート手順で使用した Compute Engine VM を削除できます。
次のステップ
- CSV ファイルをエクスポートする方法を確認する
- SQL ダンプファイルをエクスポートする方法を確認する。