mysql 误删数据 binlog恢复数据;

1.找到mysqlbinlog
mysql -uroot -p
在这里插入图片描述

mysql> show variables like ‘%log_bin%’;

在这里插入图片描述![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/eac4d99e0b18448fae2cff951f3d0e3b.png#pic_center恢复数据,首先要找到数据在哪里被删除了。mysqlbinlog --set-charset=utf8 mysql-bin.000001 > tmp.sql
可以把tmp.sql 传到本地用nodepad打开查找表创建的节点和删表的节点(文件太大可以直接在linux啥用less命令查看)
可以看到 最早的创建表节点为 23853766
在这里插入图片描述

删表节点为49531967
在这里插入图片描述

所以在binlog目录下执行
mysqlbinlog -v mysql-bin.000001 --start-position=23853766 --stop-position=49531967| mysql -uroot -p
发现有报错 ERROR 1062 ,ERROR 1105
在这里插入图片描述

那我们设置mysql跳过错误;
vi /etc/my.cnf
在下面新增配置
slave_skip_errors=all
保存重启mysql
重启命令 service mysql restart
重启后执行之前的恢复命令
mysqlbinlog -v mysql-bin.000001 --start-position=23853766 --stop-position=49531967| mysql -uroot -p
这次没有报错,查看数据 恢复成功

成功后记得把之前设置的跳过错误配置删除,并重启mysql

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值