本頁面說明如何設定下列來源資料庫執行個體,以便執行一次性同質 MySQL 遷移作業:
- MySQL 適用的 Cloud SQL
- 自行託管的 MySQL
- Amazon RDS for MySQL
- Amazon Aurora for MySQL
- Microsoft Azure Database for MySQL
設定 MySQL 適用的 Cloud SQL 來源
如要為遷移程序設定 MySQL 適用的 Cloud SQL 來源執行個體,請按照下列步驟操作:
- 請檢查來源資料庫是否包含使用者透過
DEFINER子句定義的中繼資料。請參閱「使用DEFINER子句驗證中繼資料」。資料庫遷移服務不支援同質 MySQL 遷移作業,無法遷移使用者帳戶和登入資訊。如果來源包含由使用者帳戶定義的中繼資料,且含有
DEFINER子句,可能會導致遷移作業遭到封鎖。 - 如果來源資料庫包含參照
mysql、performance_schema、information_schema、ndbinfo或sys系統結構定義中資料表的物件,請確保副本資料庫也包含這些系統結構定義資料表。如果副本資料庫沒有這些資料表,遷移工作可能會失敗,並顯示
Unknown table in system schema。 -
在執行個體建立專用的遷移使用者帳戶。 請參閱 Cloud SQL 說明文件中的「建立使用者」。請確認下列事項:
- 您允許專用使用者帳戶從任何主機 (
host=%) 連線。 - 帳戶密碼長度不超過 32 個半形字元。 如要進一步瞭解 MySQL 使用者密碼長度限制,請參閱 MySQL 錯誤 #43439。
- 您允許專用使用者帳戶從任何主機 (
-
將必要權限指派給專用的遷移使用者帳戶。 如果是一次性遷移作業,所需權限的完整清單取決於您是否提供自己的 dump 檔案,或使用資料庫遷移服務代管的 dump 功能:
代管傾印
如要讓資料庫遷移服務自動完整傾印來源資料庫,請將下列權限指派給使用者帳戶:
手動轉儲
如果您提供使用
mysqldump建立的 dump 檔案,就不必為使用者帳戶指派任何額外權限。
設定自行託管的 MySQL 來源
如要為遷移程序設定自行託管的 MySQL 來源執行個體,請按照下列步驟操作:
- 確認所有資料表 (系統資料庫中的資料表除外) 都使用 InnoDB 儲存引擎。如果使用其他儲存引擎,可能需要轉換資料表。 詳情請參閱「將資料表從 MyISAM 轉換為 InnoDB」。
- 請檢查來源資料庫是否包含使用者透過
DEFINER子句定義的中繼資料。請參閱「使用DEFINER子句驗證中繼資料」。資料庫遷移服務不支援同質 MySQL 遷移作業,無法遷移使用者帳戶和登入資訊。如果來源包含由使用者帳戶定義的中繼資料,且含有
DEFINER子句,可能會導致遷移作業遭到封鎖。 - 如果來源資料庫包含參照
mysql、performance_schema、information_schema、ndbinfo或sys系統結構定義中資料表的物件,請確保副本資料庫也包含這些系統結構定義資料表。如果副本資料庫沒有這些資料表,遷移工作可能會失敗,並顯示
Unknown table in system schema。 -
確認
GTID_MODE已設為ON或OFF,不支援其他值。在下列情況下,資料庫遷移服務需要將
GTID_MODE設為ON:如要進一步瞭解
GTID_MODE,請參閱「全域交易 ID 系統變數」。 -
在執行個體建立專用的遷移使用者帳戶。 請參閱「帳戶管理聲明」。請確認下列事項:
- 您允許專用使用者帳戶從任何主機 (
host=%) 連線。 - 帳戶密碼長度不超過 32 個半形字元。 如要進一步瞭解 MySQL 使用者密碼長度限制,請參閱 MySQL 錯誤 #43439。
- 您允許專用使用者帳戶從任何主機 (
-
將必要權限指派給專用的遷移使用者帳戶。 如果是一次性遷移作業,所需權限的完整清單取決於您是否提供自己的 dump 檔案,或使用資料庫遷移服務代管的 dump 功能:
設定 Amazon RDS for MySQL 來源
如要為遷移程序設定 Amazon RDS for MySQL 來源執行個體,請按照下列步驟操作:
- Amazon RDS for MySQL 預設使用 InnoDB 儲存引擎,但也允許使用其他儲存引擎。確認所有資料表 (系統資料庫中的資料表除外) 都使用 InnoDB 儲存引擎。如果使用其他儲存引擎,可能需要轉換資料表。 詳情請參閱「將資料表從 MyISAM 轉換為 InnoDB」。
- 請檢查來源資料庫是否包含使用者透過
DEFINER子句定義的中繼資料。請參閱「使用DEFINER子句驗證中繼資料」。資料庫遷移服務不支援同質 MySQL 遷移作業,無法遷移使用者帳戶和登入資訊。如果來源包含由使用者帳戶定義的中繼資料,且含有
DEFINER子句,可能會導致遷移作業遭到封鎖。 - 如果來源資料庫包含參照
mysql、performance_schema、information_schema、ndbinfo或sys系統結構定義中資料表的物件,請確保副本資料庫也包含這些系統結構定義資料表。如果副本資料庫沒有這些資料表,遷移工作可能會失敗,並顯示
Unknown table in system schema。 -
確認
GTID_MODE已設為ON或OFF,不支援其他值。Amazon RDS for MySQL 預設使用GTID_MODE = OFF。在下列情況下,資料庫遷移服務需要將
GTID_MODE設為ON:如要進一步瞭解
GTID_MODE,請參閱「全域交易 ID 系統變數」。 -
在執行個體建立專用的遷移使用者帳戶。 請參閱「帳戶管理聲明」。請確認下列事項:
- 您允許專用使用者帳戶從任何主機 (
host=%) 連線。 - 帳戶密碼長度不超過 32 個半形字元。 如要進一步瞭解 MySQL 使用者密碼長度限制,請參閱 MySQL 錯誤 #43439。
- 您允許專用使用者帳戶從任何主機 (
-
將必要權限指派給專用的遷移使用者帳戶。 如果是一次性遷移作業,所需權限的完整清單取決於您是否提供自己的 dump 檔案,或使用資料庫遷移服務代管的 dump 功能:
代管傾印
如要讓資料庫遷移服務自動完整傾印來源資料庫,請將下列權限指派給使用者帳戶:
手動轉儲
如果您提供使用
mysqldump建立的 dump 檔案,就不必為使用者帳戶指派任何額外權限。
設定 Amazon Aurora for MySQL 來源
如要為遷移程序設定 MySQL 適用的 Amazon Aurora 來源執行個體,請按照下列步驟操作:
- 請檢查來源資料庫是否包含使用者透過
DEFINER子句定義的中繼資料。請參閱「使用DEFINER子句驗證中繼資料」。資料庫遷移服務不支援同質 MySQL 遷移作業,無法遷移使用者帳戶和登入資訊。如果來源包含由使用者帳戶定義的中繼資料,且含有
DEFINER子句,可能會導致遷移作業遭到封鎖。 - 如果來源資料庫包含參照
mysql、performance_schema、information_schema、ndbinfo或sys系統結構定義中資料表的物件,請確保副本資料庫也包含這些系統結構定義資料表。如果副本資料庫沒有這些資料表,遷移工作可能會失敗,並顯示
Unknown table in system schema。 -
確認
GTID_MODE已設為ON或OFF,不支援其他值。MySQL 適用的 Amazon Aurora 預設使用GTID_MODE = OFF。在下列情況下,資料庫遷移服務需要將
GTID_MODE設為ON:如要進一步瞭解
GTID_MODE,請參閱「全域交易 ID 系統變數」。 -
在執行個體建立專用的遷移使用者帳戶。 請參閱「帳戶管理聲明」。請確認下列事項:
- 您允許專用使用者帳戶從任何主機 (
host=%) 連線。 - 帳戶密碼長度不超過 32 個半形字元。 如要進一步瞭解 MySQL 使用者密碼長度限制,請參閱 MySQL 錯誤 #43439。
- 您允許專用使用者帳戶從任何主機 (
-
將必要權限指派給專用的遷移使用者帳戶。 如果是一次性遷移作業,所需權限的完整清單取決於您是否提供自己的 dump 檔案,或使用資料庫遷移服務代管的 dump 功能:
代管傾印
如要讓資料庫遷移服務自動完整傾印來源資料庫,請將下列權限指派給使用者帳戶:
手動轉儲
如果您提供使用
mysqldump建立的 dump 檔案,就不必為使用者帳戶指派任何額外權限。
設定 Microsoft Azure Database for MySQL 來源
如要為遷移程序設定 Microsoft Azure Database for MySQL 來源執行個體,請按照下列步驟操作:
- 請檢查來源資料庫是否包含使用者透過
DEFINER子句定義的中繼資料。請參閱「使用DEFINER子句驗證中繼資料」。資料庫遷移服務不支援同質 MySQL 遷移作業,無法遷移使用者帳戶和登入資訊。如果來源包含由使用者帳戶定義的中繼資料,且含有
DEFINER子句,可能會導致遷移作業遭到封鎖。 - 如果來源資料庫包含參照
mysql、performance_schema、information_schema、ndbinfo或sys系統結構定義中資料表的物件,請確保副本資料庫也包含這些系統結構定義資料表。如果副本資料庫沒有這些資料表,遷移工作可能會失敗,並顯示
Unknown table in system schema。 -
確認
GTID_MODE已設為ON或OFF,不支援其他值。Microsoft Azure Database for MySQL 預設使用GTID_MODE = OFF。在下列情況下,資料庫遷移服務需要將
GTID_MODE設為ON:如要進一步瞭解
GTID_MODE,請參閱「全域交易 ID 系統變數」。 檢查
require_secure_transport設定的值。根據預設,Microsoft Azure 資料庫會要求所有傳入連線使用 SSL/TLS 加密。建立來源連線設定檔時,請根據
require_secure_transport值使用下列其中一項加密設定:- 如果
require_secure_transport設為on,請選取「Basic」、「TLS」或「mTLS」。 - 如果
require_secure_transport設為off,請選取「None」。
- 如果
-
在執行個體建立專用的遷移使用者帳戶。 請參閱「帳戶管理聲明」。請確認下列事項:
- 您允許專用使用者帳戶從任何主機 (
host=%) 連線。 - 帳戶密碼長度不超過 32 個半形字元。 如要進一步瞭解 MySQL 使用者密碼長度限制,請參閱 MySQL 錯誤 #43439。
- 您允許專用使用者帳戶從任何主機 (
-
將必要權限指派給專用的遷移使用者帳戶。 如果是一次性遷移作業,所需權限的完整清單取決於您是否提供自己的 dump 檔案,或使用資料庫遷移服務代管的 dump 功能:
後續步驟
如要查看 MySQL 適用的 Cloud SQL 同質遷移作業的完整逐步操作說明,請參閱「開始使用 MySQL 適用的 Cloud SQL 遷移作業」。