継続的な移行の場合、読み取りと書き込みを移行先データベースに移動するタイミングになったら、プロモーション プロセスを開始できます。プロモートすると、Database Migration Service は移行元データベースから切断され、変更データ イベントの移行先データベースへの複製が停止し、すべての一時的な移行データがクリーンアップされます。
- 省略可: 移行データの完全性を検証します。
- 移行元データベースに対する書き込み、実行中のスクリプト、クライアント接続をすべて停止します。この時点からがダウンタイム期間となります。
- レプリケーション遅延指標を観察し、大幅に減少するまで待ちます。理想的には、数分または数秒のオーダーです。
- 移行ジョブに対してプロモート アクションを実行します。
コンソール
移行ジョブは、Database Migration Service または移行先インスタンスのページからプロモートできます。
Database Migration Service での操作:
- Google Cloud コンソールで、[移行ジョブ] ページに移動します。
- [ジョブ] タブで、プロモートする移行ジョブの表示名をクリックします。
[移行ジョブの詳細] ページが開きます。
- [プロモート] をクリックします。
- ダイアログで [プロモート] をクリックします。
移行先インスタンスから:
- Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- 移行先のインスタンスの表示名をクリックします。
インスタンスの詳細ページが開きます。
- [移行] セクションで、[プロモート] をクリックします。
- ダイアログにエラーが表示されていないことを確認し、[プロモート] をクリックします。
gcloud
後述のコマンドデータを使用する前に、次のように置き換えます。
- MIGRATION_JOB_ID は、移行ジョブ ID に置き換えます。
識別子がわからない場合は、
gcloud database-migration migration-jobs listコマンドを使用して、特定のリージョン内のすべての移行ジョブを一覧表示し、その識別子を確認できます。 - REGION は、接続プロファイルが保存されているリージョンの識別子に置き換えます。
省略可: Database Migration Service は、デフォルトで移行元のすべてのデータベースを移行します。特定のデータベースのみを移行する場合は、
--databases-filterフラグを使用して、識別子をカンマ区切りのリストとして指定します。例:
--databases-filter=my-business-database,my-other-database--database-filter flagで作成した移行ジョブは、後でgcloud database-migration migration-jobs updateコマンドを使用して編集できます。
次のコマンドを実行します。
Linux、macOS、Cloud Shell
gcloud database-migration migration-jobs \ promote MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` promote MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ promote MIGRATION_JOB_ID ^ --region=REGION
結果
このアクションは非同期で実行されます。そのため、このコマンドは、長時間実行オペレーションを表す Operation エンティティを返します。
オペレーションが成功したかどうかを確認するには、返されたオペレーション オブジェクトをクエリするか、移行ジョブのステータスを確認します。done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: start name: OPERATION_ID
-
gcloud database-migration migration-jobs describeコマンドを使用して、移行ジョブのステータスを表示します。 -
gcloud database-migration operations describeと OPERATION_ID を使用して、オペレーション自体のステータスを確認します。
- 移行先インスタンスがプロモートされ、移行されたデータベースですべての読み取りオペレーションと書き込みオペレーションにアクセスできるようになります。移行ジョブのステータスが
Completedに変わります。 - これで、アプリケーションを Cloud SQL インスタンスに接続し、移行ジョブを安全に削除できるようになりました。