mysqldump 是 MySQL 官方邏輯備份工具,運行在 mysql/bin 目錄下,**不可**在 MySQL 命令行或 Navicat 等客戶端內執行。
ERROR 1064。bin 目錄執行。mysqldump -uroot -p test>test.sql → 报错 Unknown database 'test;'。mysqldump -u root -p test > test.sql(> 兩側加空格)。--defaults-extra-file 指定配置文件避免轉義。mysqldump -u root -p --single-transaction --master-data=2 --routines --triggers --events \ --hex-blob --default-character-set=utf8mb4 \ --databases db1 db2 > full_backup_$(date +%F).sql
mysqldump -u root -p db1 table1 table2 > tables_backup.sql
mysqldump -u root -p --no-data db1 > schema_only.sql
mysql -u root -p db1 < backup.sql
--single-transaction(InnoDB 專用,不鎖表)。--master-data=2 註釋輸出 Binlog 位置,便於搭建從庫。mysqldump ... | gzip > backup.sql.gz;還原 zcat backup.sql.gz | mysql -u root -p db1。mysqldump --parallel=4、mysqlpump;或用 mydumper/myloader 多線程工具。CHECKSUM TABLE、行數、關鍵業務查詢。