mysql binlog恢复数据

1.查看是否开启binlog日志

SHOW VARIABLES LIKE "%log_bin%";

2.开启binlog日志

(1)Linux编辑my.cnf,配置以下参数
[mysqld]
#binlog配置
log-bin=/usr/local/mysql/data/binlog
expire-logs-days=14  #按实际情况配置
max-binlog-size=500M #按实际情况配置
server-id=1  #用于主从复制

(2)windows编辑my.ini,配置以下参数
[mysqld]
#binlog配置
log-bin=C:ProgramDataMySQLMySQL Server 8.0Datainlog
expire-logs-days=14  #按实际情况配置
max-binlog-size=500M  #按实际情况配置
server-id=1  #用于主从复制

3.将binlog日志转为sql

mysqlbinlog --start-position=开始位置 --stop-position=结束位置 /usr/local/mysql/data/binlog.000001 > /usr/local/mysql/data/binlog.000001.sql

  

4.恢复数据

mysql -uroot -p
source /usr/local/mysql/data/binlog.000001.sql

注意:

  1.生产环境恢复,建议将binlog日志拉到本地恢复,按增量恢复各个数据表,再更新线上

  2.Binlog的“开始位置”和“结束位置”,在binlog转成sql中的sql文件中查看

原文地址:https://www.cnblogs.com/konglingxi/p/14715156.html