本文說明如何將資料庫遷移至預先存在的 Cloud SQL 執行個體,該執行個體是直接在 Cloud SQL 中建立。
如果目的地執行個體是由其他團隊管理,或是您需要在資料庫遷移服務外部建立執行個體 (例如使用 Terraform),這個路徑就非常實用。如果遷移作業有其他需求,請考慮採用其他遷移流程。詳情請參閱「 開始遷移 MySQL」。
遷移作業大致包含下列步驟:
- 設定來源資料庫,允許資料庫遷移服務將資料移至新資料庫。
- 設定與來源 MySQL 執行個體的網路連線。
- 建立連線設定檔和遷移工作。
- 啟動並監控遷移工作。
- 升級遷移工作,並將應用程式移至新資料庫。
費用
在本文件中,您將使用下列Google Cloud計費元件:
- Cloud SQL (請參閱 Cloud SQL 定價)。
- 如果用於儲存客戶自行管理的加密金鑰 (CMEK):Cloud Storage (請參閱「 Cloud Storage 定價」)。
您可以使用 Pricing Calculator,根據預測用量估算費用。
事前準備
- 確認這個遷移路徑是否能完全支援您的情境。請參閱下列頁面:
- 單次遷移:請考慮遷移時間表。 一次性遷移作業只會執行完整傾印和載入作業,不會擷取後續變更資料。建議您在遷移程序中停用來源資料庫的寫入作業,以免遺失資料。
- 請考量要在哪個區域建立目的地資料庫。資料庫遷移服務是完全區域性的產品,也就是說,與遷移作業相關的所有實體 (來源和目的地連線設定檔、遷移工作、目的地資料庫、轉換工作區) 都必須儲存在單一區域。
- 在 Google Cloud 控制台的專案選取器頁面中,選取或 建立 Google Cloud 專案。
- 啟用資料庫遷移服務和 Cloud SQL Admin API。
必要的角色
如要取得使用資料庫遷移服務執行同質 MySQL 遷移作業所需的權限,請要求管理員授予您專案的必要 IAM 角色:
-
資料庫遷移管理員 (
roles/datamigration.admin) - 如要在資料庫遷移服務以外建立目的地執行個體,您也需要
Cloud SQL 管理員 (
roles/cloudsql.admin) 角色
如要進一步瞭解如何授予角色,請參閱 Identity and Access Management 說明文件中的「 管理存取權」。
這些預先定義的角色具備必要權限,可透過資料庫遷移服務執行同質 MySQL 遷移作業。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要使用資料庫遷移服務執行同質 MySQL 遷移作業,必須具備下列權限:
datamigration.*cloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.updatecloudsql.instances.deletecloudsql.operations.getcloudsql.users.listcloudsql.users.getcloudsql.users.createcloudsql.users.updatecloudsql.users.delete
您或許還可透過 自訂角色或其他 預先定義的角色取得這些權限。
準備來源資料庫
如要準備要移轉的來源資料,請按照下列步驟操作:
- 請考慮是否要提供自己的 dump 檔案,或讓資料庫遷移服務自動執行完整傾印:
- 自動傾印 (預設):資料庫遷移服務會連線至來源資料庫,並在遷移工作開始時自動執行初始結構定義和資料傾印作業。開始遷移前,您不需要準備任何項目。
- 手動傾印:您可以自行產生傾印檔案,並上傳至 Cloud Storage bucket。如果您想減少主要執行個體的初始負載,並從副本取得完整傾印檔、在特定維護期間執行傾印,或傳遞自訂匯出標記,這種做法就非常實用。請參閱
使用
mysqldump匯出 MySQL 資料庫。
- 選擇並設定來源網路連線方式。
- 設定來源資料庫執行個體。
- 如要瞭解如何進行持續遷移,請參閱「 設定來源資料庫,以便持續遷移資料」。
- 如要進行單次遷移,請參閱「 設定來源資料庫以進行單次遷移」。
- 建立來源連線設定檔。
建立及設定目的地執行個體
在某些情況下,您可能需要直接在 Cloud SQL 中預先建立目的地執行個體,以便使用所有可用的設定選項。
如要直接在 Cloud SQL 中建立目的地,請仔細考量目的地機器的網路類型:
- 如要使用 Private Service Connect 介面連線能力,請建立啟用 PSC 的目的地執行個體。請參閱「 建立啟用 PSC 的執行個體」。
- 如要使用虛擬私有雲對等互連連線,請將目的地執行個體建立為 PSA 執行個體。請參閱「 建立資料庫執行個體」。
- 如要使用公開 IP 許可清單連線能力,請建立已啟用公開 IP 的目的地執行個體。請參閱「 建立資料庫執行個體」。
如果您已有目的地 Cloud SQL 執行個體,可以繼續進行下一節。
建立並執行遷移工作
如要設定及執行遷移作業,請按照下列步驟操作:
完成遷移作業
決定將應用程式切換至新的 MySQL 適用的 Cloud SQL 執行個體後,請按照下列步驟完成遷移作業:
持續遷移
一次性遷移
資料庫遷移服務完成完整轉儲階段後,目的地執行個體會自動升級為獨立執行個體。如要完成遷移,請按照下列步驟操作:
- 選用步驟: 確認遷移資料是否完整。
- 將應用程式切換為連線至新的 MySQL 適用的 Cloud SQL 執行個體。
後續步驟
進一步瞭解 MySQL 適用的 Cloud SQL Google Cloud 功能。請參閱「 MySQL 適用的 Cloud SQL 功能」。