mysqldump中备份出来的sql,单行insert
·
控制mysqldump输出格式(每行一个INSERT)
使用--skip-extended-insert参数可以强制每个INSERT语句单独成行。默认情况下mysqldump会使用扩展INSERT语法(多行合并为一个INSERT语句)。
mysqldump --skip-extended-insert -u username -p database_name > output.sql
对于需要保留复制点信息的场景,添加--master-data参数:
mysqldump --skip-extended-insert --master-data=2 -u username -p database_name > output.sql
关键参数说明
--master-data=2会在输出文件中以注释形式包含二进制日志坐标(CHANGE MASTER语句),值设为1时该语句非注释形式。该参数自动启用--lock-all-tables(除非同时使用--single-transaction)。
-- Position to start replication from
--
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000123', MASTER_LOG_POS=456789;
完整备份命令示例
结合事务锁定确保数据一致性,同时控制INSERT格式:
mysqldump --skip-extended-insert --master-data=2 --single-transaction -u username -p database_name > backup.sql
参数说明:
--single-transaction:对InnoDB表使用事务确保一致性-u:指定用户名-p:提示输入密码- 最后的重定向操作符将输出保存到文件
更多推荐
所有评论(0)