

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 中使用 MySQL 相容資料庫做為同質資料遷移的目標 AWS DMS
<a name="dm-data-providers-target-mysql"></a>

您可以在 AWS DMS中使用 MySQL 相容資料庫作為同質資料遷移的遷移目標。

AWS DMS 需要特定許可，才能將資料遷移到目標 Amazon RDS for MySQL 或 MariaDB 或 Amazon Aurora MySQL 資料庫。使用以下指令碼在 MySQL 目標資料庫中建立具有所需許可的資料庫使用者。

在此範例中，將每個*使用者輸入預留位置*取代為您自己的資訊。如果您的目標 MariaDB 資料庫版本低於 10.5，則可以略過 `GRANT SLAVE MONITOR`命令。

```
CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';

GRANT ALTER, CREATE, DROP, INDEX, INSERT, UPDATE, DELETE, SELECT, CREATE VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, EXECUTE, REFERENCES ON *.* TO 'your_user'@'%';
GRANT REPLICATION SLAVE, REPLICATION CLIENT  ON *.* TO 'your_user'@'%'; GRANT SLAVE MONITOR  ON *.* TO 'your_user'@'%';
```

在上述範例中，將每個*使用者輸入預留位置*取代為您自己的資訊。

使用以下指令碼在 MariaDB 資料庫中建立具有所需許可的資料庫使用者。為您遷移到的所有資料庫執行 GRANT 查詢 AWS。

```
CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, EXECUTE,SLAVE MONITOR, REPLICATION SLAVE ON *.* TO 'your_user'@'%';
```

在上述範例中，將每個*使用者輸入預留位置*取代為您自己的資訊。

**注意**  
在 Amazon RDS 中，當您開啟 MySQL/Maria 資料庫執行個體的自動備份時，也會連帶開啟二進位記錄功能。啟用這些設定後，在目標資料庫上建立次要物件 (例如函數、程序和觸發條件) 時，您的資料遷移工作可能會失敗，並顯示下列錯誤。如果您的目標資料庫已啟用二進位記錄，在開始工作之前，請將資料庫參數群組中的 `log_bin_trust_function_creators` 設定為 `true`。  

```
ERROR 1419 (HY000): You don't have the SUPER privilege and binary logging is enabled (you might want to use the less safe log_bin_trust_function_creators variable)
```

## 使用 MySQL 相容資料庫做為同質資料遷移目標的限制
<a name="dm-data-providers-target-mysql-limitations"></a>

使用 MySQL 相容資料庫作為同質資料遷移的目標時，存在下列限制：
+ 用於連線到資料來源的使用者名稱具有以下限制：
  + 長度可有 2 到 64 個字元。
  + 不能有空格。
  + 可以包含以下字元：a-z、A-Z、0-9 和底線 (\$1)。
  + 不能包含連字號 (-)。
  + 必須以 a-z 或 A-Z 開頭。
+ 您用來連線到資料來源的密碼具有以下限制：
  + 長度可有 1 到 128 個字元。
  + 不能包含下列任何項目：單引號 (')、雙引號 (「)、分號 (;) 或空格。