Mysql如何快速回滚被删除的数据

描述

在数据库操作中,难免会因为各种各样的原因对数据造成损坏,这个时候就需要对数据库快速恢复。传统的方法会先恢复mysql备份,再去用mysqlbinlog抽取指定时间点的日志,再恢复,这样的操作比较耗时,容易出错,那有没有一种工具可以快速把误删除的操作SQL逆过来,然后重新插入误删除的数据呢?

binlog2sql,就是一个很好的应用,它可以从MySQL binlog解析出SQL,根据不同选项,你可以得到原始SQL、回滚SQL、去除主键的INSERT SQL等。

演示环境说明:

数据库:Mysql5.6

操作系统:Centos7为例

演示场景:2018年10月31日10:56,删除整个表的数据,演示快速回滚被删除的数据

操作步骤

1、回滚之前先确认一下Mysql Server配置参数

MySQL

2、如果你没有mysql命令,那么需要安装对应版本的Mysql客户端,Centos7对应的mysql客户端包是mariadb,Centos6客户端包是mysql

MySQL

3、安装binlog2sql回滚工具

MySQL

4、授权用于回滚的Mysql用户

MySQL

5、开始实验:模拟误删除

MySQL

6、查看误删除时间点写入的binlog文件

MySQL

7、查看误删除时间点的操作SQL

MySQL

8、生成回滚SQL

MySQL

9、登录mysql,对数据进行回滚

MySQL

可以看到被删除的两条数据已经恢复。

工具参数说明:

MySQL

当然数据库恢复是修复操作,是对已经发生问题的进行的补救措施。咱们实际业务中还是应该应该重视流程和测试,避免数据库误操作。数据库毕竟关系到用户的核心利益。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分