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:\ProgramData\MySQL\MySQL Server 8.0\Data\binlog
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文件中查看

 

posted @ 2021-04-28 17:58  詹姆溪  阅读(101)  评论(0编辑  收藏  举报