Windows Mysql mysqlbinlog数据恢复(1)

61 阅读1分钟

本地测试的时候,数据都有可能错更新或者误删除!重要的数据怎么回复呢?

用 mysqlbinlog 方法导出日志数据,有备份数据库的请忽略这篇文章

1. 在这之前需要你的mysql的配置已经开启的 binlog_format=ROW

image.png

image.png

2. Navicat 查询mysql日志细节

用Navicat软件,以管理员的身份打开,用root的管理员账号登录,然后运行下面的命令

    show master logs;

image.png

查找到最新的记录 mysql-bin.000118

image.png

还可以用下面的语句, 查询详细的条例

show binlog events in 'mysql-bin.000118';

结果如下: image.png

3. 通过mysqlbinlog导出日志

mysqlbinlog的工具在 mysql的bin的目录下, 如果没有配置mysql的环境变量,可以在这里找

image.png

然后运行 cmd 命令行界面

mysqlbinlog --no-defaults --base64-output=decode-rows -v D:\Program11\PHPBtSoft\mysql\MySQL5.7\data\mysql-bin.000118 > binlog_output2.txt

参数解释:

a. D:\Program11\PHPBtSoft\mysql\MySQL5.7\data\mysql-bin.000118 是 日志文件的位置

b. binlog_output2.txt 导出的文件位置和文件名, 这里默认mysql->bin的目录

4. 查看日志数据

找到binlog_output2.txt文件打开查看数据的变化

image.png

注意:手动只能做小数据量的回复,并且发现错了需要马上查询, 不然的后日志查询起来很麻烦, 还是要做好数据表备份!!!