フィードバックを送信
API を使用して接続プロファイルを管理する
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
概要
このページでは、Database Migration Service API を使用して、PostgreSQL ソース データベースと AlloyDB 宛先の接続プロファイルを管理する方法について説明します。
Database Migration Service API を使用する方法は 2 つあります。REST API 呼び出しを行うか、Google Cloud CLI(CLI)を使用できます。
gcloud
を使用して Database Migration Service 接続プロファイルを管理する大まかな情報は、こちら をご覧ください。
Database Migration Service の一部 API 呼び出しは、完了するまでに時間がかかることがあります。API は非同期であるため、オペレーションがまだ進行中の場合でも、呼び出しはすぐに返されます。後続の API 呼び出しで新しく作成されたオブジェクトを使用する場合は、最初のオペレーションが完了するまで待ってから続行する必要があります。
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):
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
次のような 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
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
次のような 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):
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
次のような 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
}
}
}
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
次のような 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
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
gcloud
gcloud
を使用して接続プロファイルに関する情報を取得する方法の詳細については、こちら をクリックしてください。
接続プロファイルの一覧表示
次のコードは、すべての接続プロファイルに関する情報を取得するリクエストを示しています。
REST
リクエストのデータを使用する前に、次のように置き換えます。
project-id : プロジェクト ID
region : プロジェクトのリージョン
Database Migration Service が取得する接続プロファイルのリストを次のようにフィルタすることもできます。
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
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles"
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
gcloud
gcloud
を使用してすべての接続プロファイルに関する情報を取得する方法の詳細については、こちら をクリックしてください。
接続プロファイルを更新する
次の例は、既存の接続プロファイルのユーザー名とパスワード フィールドを更新するリクエストを示しています。リクエストで updateMask
パラメータを使用することによって、これらのフィールドのみをリクエストの本文に含めば済むようになります。
REST
リクエストのデータを使用する前に、次のように置き換えます。
project-id : プロジェクト ID
region : プロジェクトのリージョン
connection-profile-id : 接続プロファイル ID
username : データベース ユーザー名
password : データベース ユーザーのパスワード
HTTP メソッドと URL:
リクエストの本文(JSON):
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ ""
PowerShell(Windows)
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "" | Select-Object -Expand Content
次のような 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
を使用して接続プロファイルを更新する方法の詳細については、こちら をクリックしてください。
接続プロファイルの削除
重要: 接続プロファイルを削除できるのは、プロファイルに関連付けられているアクティブな移行ジョブがない場合に限られます。接続プロファイルにアクティブな移行ジョブがある場合は、ジョブを昇格 または削除 します。
接続プロファイルにアクティブな移行ジョブが関連付けられているかどうかを確認するには、次のコマンドを実行します。
GET
https://datamigration.googleapis.com/v1/projects/project-id /locations/region /migrationJobs?filter=state:STATE_NAME OR state:STATE_NAME AND source:projects/project-id /locations/region /connectionProfiles/connection-profile-id
次に例を示します。
GET
https://datamigration.googleapis.com/v1/projects/myproject/locations/myregion/migrationJobs?filter=state:RUNNING OR state:FAILED AND source:projects/myproject/locations/myregion/connectionProfiles/postgresql-to-alloydb-src1
移行ジョブの状態(ステータス)は次のとおりです。
NOT STARTED:
移行ジョブは作成されていますが、開始されていません。
STARTING:
移行ジョブの開始プロセス中です。
RUNNING:
移行ジョブが実行中です。このジョブを使用して、移行元データベースから移行先データベースにデータを移行できます。
STOPPING:
移行ジョブが停止中です。
STOPPED:
移行ジョブが一時停止され、移行先データベースへのデータの移行が停止しています。
RESUMING:
一時停止された移行ジョブが実行中です。
FAILED:
移行ジョブの実行中に問題が発生しました。
RESTARTING:
Database Migration Service は、移行元データベースの新しいスナップショットを取得し、最初のダンプが移行先データベースに読み込まれ、移行元データベースから移行先データベースへのデータの継続的な変更が処理されます。
ユーザーがこれらのステータスのいずれかの移行ジョブを実行していて、接続プロファイルを削除しようとすると、失敗します。
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
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
次のような 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
リクエストを送信するには、次のいずれかのオプションを展開します。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id ?force=true"
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id ?force=true" | Select-Object -Expand Content
次のような 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 インスタンスの両方を削除する方法の詳細については、こちら をご覧ください。
フィードバックを送信
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-04-17 UTC。
ご意見をお聞かせください
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-04-17 UTC。"],[[["This page explains how to manage connection profiles for PostgreSQL source databases and AlloyDB destinations using the Database Migration Service API, which can be accessed through REST API calls or the Google Cloud CLI."],["You can create connection profiles for PostgreSQL source databases, including Cloud SQL for PostgreSQL, by using provided request examples and specific parameters such as project ID, region, and connection profile details."],["AlloyDB destination connection profiles can be created, and they support the creation of new AlloyDB instances, with options to specify cluster ID, user credentials, VPC network, instance ID, and CPU configuration."],["Connection profile information can be viewed, updated, and listed using the API, and it includes filtering and ordering options for efficient retrieval of information."],["Connection profiles can be deleted, but if there are active migration jobs associated with it, they must be promoted or deleted first, and if it's an AlloyDB instance it can also be cascade-deleted using the API."]]],[]]