本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您也可以將現有 MariaDB 或 MySQL 資料庫的資料匯入 MySQL 或 MariaDB 資料庫執行個體。您可以透過使用 mysqldumpmysqldump
命令列公用程式通常用於進行備份,並將資料從一個 MariaDB 或 MySQL 伺服器傳輸到另一個伺服器。它包含在 MySQL 和 MariaDB 用戶端軟體中。
注意
如果您使用 MySQL 資料庫執行個體匯入或匯出大量資料,RDS則使用xtrabackup
備份檔案和 Amazon S3 將資料移入和移出 Amazon 會更可靠且更快速。如需詳細資訊,請參閱將備份還原至 Amazon RDS for MySQL 資料庫執行個體。
將資料從外部資料庫移動到 Amazon RDS 資料庫執行個體的典型mysqldump
命令如下所示。
mysqldump -u
local_user
\ --databasesdatabase_name
\ --single-transaction \ --compress \ --order-by-primary \ -plocal_password
| mysql -uRDS_user
\ --port=port_number
\ --host=host_name
\ -pRDS_password
重要
切勿在 -p
選項與輸入的密碼間插入空白。
指定此處所顯示提示以外的憑證,作為安全最佳實務。
請確認您了解下列建議和注意事項:
-
從傾印檔案中排除下列結構描述:
sys
、performance_schema
和information_schema
。mysqldump
公用程式已預設排除這些結構描述。 -
如果您需要遷移使用者和權限,請考慮使用產生資料控制語言 (DCL) 的工具來重新建立使用者和權限,例如pt-show-grants
公用程式。 -
若要執行匯入,請確認執行此程序的使用者能夠存取資料庫執行個體。如需詳細資訊,請參閱 使用安全群組控制存取。
使用的參數如下:
-u
– 用來指定使用者名稱。在此參數的第一次使用中,您會在本機 MariaDB 或local_user
--databases
參數識別的 MySQL 資料庫上指定使用者帳戶的名稱。--databases
– 使用 指定要匯入 Amazon 的本機 MariaDB 或 MySQL 執行個體上的資料庫名稱RDS。database_name
-
--single-transaction
– 確保從本機資料庫負載的所有資料均與單一時間點一致。如有其他程序在mysqldump
讀取資料時變更資料,使用此參數有助於維持資料完整性。 --compress
– 在將資料傳送到 Amazon 之前,使用 從本機資料庫壓縮資料,以減少網路頻寬消耗RDS。--order-by-primary
– 以資料的主索引鍵排序各資料表的資料,以減少載入時間。-p
– 用來指定密碼。首次使用此參數時,需指定第一個local_password
-u
參數所識別的使用者帳戶密碼。-u
– 用來指定使用者名稱。在此參數的第二個用途中,您會為RDS_user
--host
參數識別的 MariaDB 或 MySQL 資料庫執行個體,在預設資料庫中指定使用者帳戶的名稱。--port
– 使用 指定 MariaDB 或 MySQL 資料庫執行個體的連接埠。埠號預設為 3306,除非您在建立執行個體時另行變更。port_number
-
--host
– 使用 從 Amazon 資料庫執行個體端點指定網域名稱系統 (DNS) RDS 名稱,例如host_name
myinstance.123456789012.us-east-1.rds.amazonaws.com
。您可以在 Amazon RDS管理主控台的執行個體詳細資訊中找到端點值。 -
-p
– 用來指定密碼。第二次使用此參數時,需指定第二個RDS_password
-u
參數所識別的使用者帳戶密碼。
請務必在 Amazon RDS資料庫中手動建立任何預存程序、觸發條件、函數或事件。如果您正在複製的資料庫中存有上述物件,則請在執行 mysqldump
時排除這些物件。為此,請在 mysqldump
命令中包含以下參數:--routines=0 --triggers=0
--events=0
。
下列範例會將本機主機上的world
範例資料庫複製到 MySQL 資料庫執行個體。
用於 Linux, macOS、 或 Unix:
sudo mysqldump -u
localuser
\ --databasesworld
\ --single-transaction \ --compress \ --order-by-primary \ --routines=0 \ --triggers=0 \ --events=0 \ -plocalpassword
| mysql -urdsuser
\ --port=3306
\ --host=myinstance.123456789012.us-east-1.rds.amazonaws.com
\ -prdspassword
若為 Windows 系統,請在命令提示字元中執行下列命令,方法是對 Windows 程式選單中的命令提示字元按一下滑鼠右鍵,然後選擇以系統管理員身分執行:
mysqldump -u
localuser
^ --databasesworld
^ --single-transaction ^ --compress ^ --order-by-primary ^ --routines=0 ^ --triggers=0 ^ --events=0 ^ -plocalpassword
| mysql -urdsuser
^ --port=3306
^ --host=myinstance.123456789012.us-east-1.rds.amazonaws.com
^ -prdspassword
注意
指定此處所顯示提示以外的憑證,作為安全最佳實務。