從來源資料庫將結構定義、資料和中繼資料遷移至目的地資料庫時,請務必確保所有資訊都正確遷移。資料庫遷移服務能以高保真的方式,將資料庫物件 (包括結構定義、資料和中繼資料) 從一個資料庫遷移至另一個資料庫。
資料庫遷移作業會遷移下列所有資料、結構定義和中繼資料元件:
資料
- 所有資料表和結構定義,但不包括下列系統資料庫:
sys、mysql、performance_schema和information_schema。
結構定義
命名
主鍵
資料類型
序數位置
預設值
是否可為空值
自動遞增屬性
次要索引
中繼資料
預存程序
函式
觸發條件
瀏覽次數
外鍵限制
持續遷移
在持續遷移期間,系統會更新先前列出的所有資料、結構定義和中繼資料的資料操縱語言 (DML) 和資料定義語言 (DDL) 變更。
哪些項目不會遷移
如要遷移加密資料庫,您必須將加密金鑰提供給資料庫遷移服務。資料庫遷移服務支援從加密的 Amazon Aurora 或 Amazon RDS 資料庫遷移資料,因為這些資料庫會在服務中以透明方式處理解密。詳情請參閱「 加密 Amazon Aurora 資源」、「 加密 Amazon RDS 資源」和「 設定客戶自行管理的加密金鑰 (CMEK)」。
使用者帳戶和登入資訊不會遷移。
MySQL 系統資料庫 (
mysql、performance_schema、information_schema和sys) 不會遷移。這些資料庫包含使用者帳戶、登入和權限的相關資訊。使用者帳戶登入資訊必須直接在目的地 Cloud SQL 資料庫執行個體中管理。如果中繼資料物件 (例如預存程序、函式、檢視區塊、事件和觸發程序) 使用
DEFINER子句參照目的地執行個體上不存在的使用者帳戶,則在新 Cloud SQL 目的地執行個體上叫用時會失敗。您必須在目的地執行個體上建立對應的使用者帳戶,或在遷移前更新DEFINER子句。詳情請參閱「 使用DEFINER子句驗證中繼資料」。如要將使用者新增至 Cloud SQL 目的地執行個體,請前往該執行個體,然後透過「Users」(使用者) 分頁或 MySQL 用戶端新增使用者。如要進一步瞭解如何在 MySQL 適用的 Cloud SQL 中建立及管理資料庫使用者,請參閱 Cloud SQL 說明文件中的「 建立及管理使用者」。
系統不會將非預設的旗標設定遷移至 Cloud SQL 目的地執行個體。將結構定義、資料和中繼資料遷移至目的地資料庫之前,請先在來源資料庫上執行 SHOW VARIABLES,然後在 Cloud SQL 資料庫上再次執行。視需要在 Cloud SQL 資料庫上更新旗標設定,以複製來源設定。