概要
このページでは、Database Migration Service API を使用して、PostgreSQL ソース データベースと AlloyDB 宛先の接続プロファイルを管理する方法について説明します。
Database Migration Service API を使用する方法は 2 つあります。REST API 呼び出しを行うか、Google Cloud CLI(CLI)を使用できます。
gcloud
を使用して Database Migration Service 接続プロファイルを管理する大まかな情報は、こちらをご覧ください。
PostgreSQL 移行元データベースの接続プロファイルを作成する
次のコードは、PostgreSQL 移行元データベースの接続プロファイルを作成するリクエストを示しています。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
- connection-profile-display-name: 接続プロファイルの表示名
- host-ip-address: 送信元 IP アドレス
- username: データベース ユーザー名
- password: データベース ユーザーのパスワード
HTTP メソッドと URL:
POST https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles?connectionProfileId=connection-profile-id
リクエストの本文(JSON):
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して Database Migration Service 接続プロファイルを作成する大まかな情報については、こちらをご覧ください。
作成後、connectionProfiles/get
メソッドを呼び出して接続プロファイルに関する情報を表示できます。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
HTTP メソッドと URL:
GET https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles/connection-profile-id
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
gcloud
gcloud
を使用して接続プロファイルに関する情報を取得する方法の詳細については、こちらをクリックしてください。
Cloud SQL for PostgreSQL ソース データベースの接続プロファイルを作成する
次のコードは、Cloud SQL for PostgreSQL ソース データベースの接続プロファイルを作成するリクエストを示しています。この例では、Cloud SQL 管理レイヤではなく PostgreSQL データベース エンジンに接続するため、PostgreSQL 接続プロファイルを使用します。
Cloud SQL を使用してソースとレプリカのペアリングを作成するには、Cloud SQL データベースのインスタンス ID を指定する必要があります。インスタンス ID の値は、Cloud SQL Admin API の databases/list
メソッドを使用して確認できます。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
- connection-profile-display-name: 接続プロファイルの表示名
- host-ip-address: 送信元 IP アドレス
- username: データベース ユーザー名
- password: データベース ユーザーのパスワード
- cloud-sql-instance-id: Cloud SQL インスタンス ID
HTTP メソッドと URL:
POST https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles?connectionProfileId=connection-profile-id
リクエストの本文(JSON):
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して Database Migration Service 接続プロファイルを作成する大まかな情報については、こちらをご覧ください。
AlloyDB for PostgreSQL の移行先の接続プロファイルを作成する
次のコードは、AlloyDB for PostgreSQL の宛先の接続プロファイルを作成するリクエストを示しています。Database Migration Service は、このリクエストの情報を使用して新しい AlloyDB インスタンスを作成します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
- connection-profile-display-name: 接続プロファイルの表示名
- cluster-id: 作成する AlloyDB クラスタ ID
- user: 最初のユーザーに付与するユーザー名
- password: 最初のユーザーに付与するパスワード
- vpc-network: AlloyDB クラスタが接続される VPC ネットワーク
- instance-id: 作成する AlloyDB インスタンス ID
- cpu-count: インスタンスに構成する CPU の数
Google Cloud に保存されているすべてのデータは、Google 独自の暗号化データに使用されているのと同じ強化鍵管理システムを使用して保存時に暗号化されます。こうした鍵管理システムでは厳密な鍵のアクセス制御と監査が行われ、AES-256 暗号化標準を使用してデータが保存時に暗号化されます。セットアップ、構成、管理は必要ありません。 Google Cloudのデフォルトの保存時の暗号化は、暗号化マテリアルのコンプライアンスや地域区分に関連する特定の要件を持たないユーザーに最適です。
HTTP メソッドと URL:
POST https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles?connectionProfileId=connection-profile-id
リクエストの本文(JSON):
{ "displayName": "connection-profile-display-name", "alloydb": { "cluster_id": "cluster-id" "settings": { "initial_user": { "user": "user", "password": "password", } "vpc_network": "vpc-network", "primary_instance_settings": { "id": "instance-id", "machine_config": { "cpu_count": cpu-count } } } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591975557292-5a7e4b195623c-e350e3da-713dee7d", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T15:25:57.430715421Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して Database Migration Service 接続プロファイルを作成する大まかな情報については、こちらをご覧ください。
接続プロファイルに関する情報を取得する
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
HTTP メソッドと URL:
GET https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles/connection-profile-id
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
gcloud
gcloud
を使用して接続プロファイルに関する情報を取得する方法の詳細については、こちらをクリックしてください。
接続プロファイルの一覧表示
次のコードは、すべての接続プロファイルに関する情報を取得するリクエストを示しています。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
orderBy:
このフィルタを使用すると、特定のリージョンのすべての接続プロファイルのリストをアルファベット順で取得できます。たとえば、orderBy=name
フィルタは、すべての接続プロファイルを名前でアルファベット順に返します。-
pageSize:
このフィルタを使用すると、Database Migration Service が取得してページに表示する接続プロファイルの最大数を指定できます。たとえば、pageSize=10
を設定すると、Database Migration Service は 1 ページに最大 10 個の接続プロファイルを返します。
接続プロファイルが 10 個を超える場合は、他のページに表示されます。各ページの最後に、nextPageToken
パラメータと一意の識別子が表示されます。識別子を使用して、次のページの接続プロファイルのリストを取得します。
HTTP メソッドと URL:
GET https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
gcloud
gcloud
を使用してすべての接続プロファイルに関する情報を取得する方法の詳細については、こちらをクリックしてください。
接続プロファイルを更新する
次の例は、既存の接続プロファイルのユーザー名とパスワード フィールドを更新するリクエストを示しています。リクエストで updateMask
パラメータを使用することによって、これらのフィールドのみをリクエストの本文に含めば済むようになります。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
- username: データベース ユーザー名
- password: データベース ユーザーのパスワード
HTTP メソッドと URL:
PATCH
リクエストの本文(JSON):
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して接続プロファイルを更新する方法の詳細については、こちらをクリックしてください。
接続プロファイルの削除
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
HTTP メソッドと URL:
DELETE https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles/connection-profile-id
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して接続プロファイルを削除する方法の詳細についてはこちらをクリックしてください。
接続プロファイルと関連する AlloyDB インスタンスを削除する
次のコードは、宛先接続プロファイルを削除し、関連付けられた AlloyDB インスタンスをカスケード削除するリクエストを示しています。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- region: プロジェクトのリージョン
- connection-profile-id: 接続プロファイル ID
HTTP メソッドと URL:
DELETE https://datamigration.googleapis.com/v1/projects/project-id/locations/region/connectionProfiles/connection-profile-id?force=true
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/project-id/locations/region/operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id/locations/region/connectionProfiles/connection-profile-id", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
gcloud
gcloud
を使用して接続プロファイルと関連する AlloyDB インスタンスの両方を削除する方法の詳細については、こちらをご覧ください。