如果是連續遷移,您可以在需要將讀取和寫入作業移至目的地資料庫時,啟動升級程序。升級後,遷移的 Cloud SQL 資料庫即可執行所有讀寫作業。
您可以升級遷移工作,或升級遷移工作中的特定資料庫。
- 啟動升級程序。為避免資料遺失,請務必停止所有寫入作業、執行中的指令碼,以及與來源資料庫之間的用戶端連線。停機期間會從此時起算。
- 請確認交易記錄檔中的所有可用資料,都已複製到 SQL Server 適用的 Cloud SQL 目的地執行個體。
SQL Server 適用的 Cloud SQL 來源
如果是 SQL Server 適用的 Cloud SQL 來源,資料庫遷移服務會自動監控交易記錄匯出作業。停止寫入來源執行個體後,您不需要執行任何其他動作。您可以繼續升級遷移工作。
自行管理或 Amazon RDS 來源
如果是自行管理或 Amazon RDS 來源,您可以執行下列任一操作,達到這個結果:
- 停止 自動上傳備份檔案,或上傳最後一個交易記錄檔。監控 未處理的交易記錄備份大小,判斷資料庫遷移服務何時會處理完該檔案。
- 您也可以上傳名稱結尾為
.trn.final後置字串的交易記錄檔。資料庫遷移服務偵測到名稱符合.trn.final後置字串慣例的備份檔案時,就會停止持續載入。資料庫遷移服務處理完該檔案後,遷移工作狀態會變更為 Ready to promote (可升級)。
- 執行升級動作:
控制台
您可以在資料庫遷移服務或目的地執行個體頁面,升級遷移工作。
在資料庫遷移服務中:
- 前往 Google Cloud 控制台的「Migration jobs」(遷移工作) 頁面。
- 在「Jobs」(工作) 分頁中,按一下要升級的遷移工作顯示名稱。
遷移工作詳細資料頁面隨即開啟。
- 執行下列其中一項升級動作:
- 如要升級所有資料庫,請按一下工具列中的「升級」。
- 如要只升級特定資料庫,請在「資料庫」分頁中選取這些資料庫,然後按一下「升級」。
- 在對話方塊中,確認沒有顯示任何錯誤,然後按一下「Promote」。
從目的地執行個體:
- 前往 Google Cloud 控制台的「Cloud SQL Instances」(Cloud SQL 執行個體) 頁面。
- 按一下遷移作業目的地執行個體的顯示名稱。
執行個體詳細資料頁面隨即會開啟。
- 在「遷移」部分,按一下「升級」。
- 在對話方塊中,確認沒有顯示任何錯誤,然後按一下「Promote」。
gcloud
使用下列任何指令資料前,請先替換以下項目:
- 將 MIGRATION_JOB_ID 替換為遷移工作 ID。
如果您不知道 ID,可以使用
gcloud database-migration migration-jobs list指令列出特定區域中的所有遷移工作,並查看其 ID。 - 將 REGION 替換為連線設定檔儲存區域的 ID。
選用:資料庫遷移服務預設會遷移來源中的所有資料庫。如要只遷移特定資料庫,請使用
--databases-filter旗標,並以半形逗號分隔的清單指定 ID。例如:
--databases-filter=my-business-database,my-other-database您之後可以使用
gcloud database-migration migration-jobs update指令,編輯透過--database-filter flag建立的遷移工作。
執行下列指令:
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指令查看遷移工作狀態。 - 請搭配使用
gcloud database-migration operations describe和 OPERATION_ID,查看作業本身的狀態。
- 系統會升級您選取的目的地執行個體或資料庫,您現在可以對遷移的資料庫執行所有讀取和寫入作業。遷移工作狀態會變更為「
Completed」。 - 應用程式現在可以連線至 Cloud SQL 執行個體,遷移工作也能安全刪除。