如果是連續遷移,您可以在準備好將應用程式切換至目的地資料庫時,啟動升級程序。升級遷移工作後,目的地執行個體會與來源中斷連線,並轉換為獨立的主要資料庫執行個體,讓您能繼續自動備份、設定時間點復原 (PITR) 及建立唯讀副本。
您可以升級遷移工作,或升級遷移工作中的特定資料庫。
- 停止所有寫入作業、執行中的指令碼,以及與來源資料庫之間的用戶端連線。 休息時間從這裡開始。
- 請等到
複製延遲指標為零或接近零,這代表遷移工作已處理完所有未完成的變更。
即使複製延遲時間不為零,您也可以升級遷移作業。這可以縮短資料庫停機時間,但可能會影響目的地資料的準確度。
- 執行升級動作:
控制台
- 前往 Google Cloud 控制台的「Migration jobs」(遷移工作) 頁面。
- 在「Jobs」(工作) 分頁中,按一下要升級的遷移工作顯示名稱。
遷移工作詳細資料頁面隨即開啟。
- 執行下列其中一項升級動作:
如要升級遷移作業中的所有資料庫,請在遷移工作的工具列中,按一下「升級」。
「升級遷移工作」對話方塊隨即顯示。
如果只想升級特定資料庫,請勾選資料庫名稱旁的核取方塊,然後在「資料庫」分頁中點選「升級」。
對話方塊會顯示要升級的資料庫數量。
- 在對話方塊中,確認沒有顯示任何錯誤,然後按一下「Promote」(升級)。
gcloud
使用下列任何指令資料前,請先替換以下項目:
- 將 MIGRATION_JOB_ID 替換為遷移工作 ID。
如果您不知道 ID,可以使用
gcloud database-migration migration-jobs list指令列出特定區域中的所有遷移工作,並查看其 ID。 - 將 REGION 替換為連線設定檔儲存區域的 ID。
執行下列指令:
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
結果
這項動作會以非同步方式執行。因此,這個指令會傳回代表長時間執行的作業的 作業實體:
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指令搭配 MIGRATION_JOB_ID,查看遷移工作狀態。 - 使用
gcloud database-migration operations describe指令和 OPERATION_ID,查看作業本身的狀態。
- 您選取的目的地執行個體或資料庫已升級。
目的地執行個體會與來源中斷連線,成為獨立的主要執行個體,並準備好接收完整的應用程式流量。遷移工作狀態會變更為「
Completed」。 - (選用) 針對使用
pg_cron擴充功能的來源:資料庫遷移服務不會遷移pg_cron擴充功能 (或與該擴充功能相關聯的任何cron設定),但 PostgreSQL 適用的 Cloud SQL 目的地支援這項功能。如果您在來源資料庫中使用pg_cron擴充功能,可以在目的地執行個體重新安裝。 - 您現在可以將應用程式連結至 Cloud SQL 執行個體,並刪除遷移工作。