mysqldump逻辑备份恢复步骤
具体操作步骤为:
1.备份数据mysqldump --skip-lock-tables --single-transaction --flush-logs --hex-blob --master-data=2 -A (--skip-lock-tables 不锁表
--master-data=2 在导出的时候同时生成binlog文件名和位置在导出的文件开头。这个很重要。--single-transaction 通过将导出操作封装在一个事务内来使得导出的数据是一个一致性快照)
2.使用scp命令把文件移动到从库。
scp -P 端口号 -r 用户名@192.xx.xx.31:/data/xxxx.sql /data/mysql/
3.grep文件查询同步开始文件和开始位置
grep -i "CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin." mysql.bak.sql
4.在从库上停止同步
stop slave;
5.导入数据
source /tmp/mysql.bak.sql
6.设置从库的同步开始文件和开始位置
change master to master_host = '主库主机', master_user = '同步用户名', master_port=3306, master_password='', master_log_file = '第3步中获取的file', master_log_pos=第3步中获取的position;
7.从库上启动同步并检查start slave; show slave status\G; 查看:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
恢复正常。