【发布时间】:2019-08-31 08:08:58
【问题描述】:
我像这样运行 MySQL 数据库转储:
mysqldump mydatabase -u root -p --single-transaction --events --routines --quick --master-data=2 --flush-logs --flush-privileges > mydump.sql
这将创建一个转储文件,其中包含以下行:
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000008', MASTER_LOG_POS=120;
这告诉我任何新的更改都记录在 mysql-bin.000008 开始
然后,我可以在加载我的转储文件后,像这样加载增量文件(假设 mysql-bin.000009 也在某个时候创建):
mysqlbinlog mysql-bin.000008 mysql-bin.000009 | mysql -u root -p mydatabase
但是 MASTER_LOG_POS = 120 呢?我是否需要包含它,如果需要,如何包含?我的转储命令包括 --flush-logs 所以它应该已经启动了一个全新的文件。
我正在阅读这里的https://dev.mysql.com/doc/refman/5.7/en/backup-policy.html 和这里的https://dev.mysql.com/doc/refman/5.7/en/recovery-from-backups.html
【问题讨论】:
标签: mysql mysqlbinlog