因数据丢失,被要求使用binlog查看 执行SQL的具体情况。
拿到数据库压缩包,解压缩获得文件和文件夹若干。
如图,有17个binlog文件,目标数据库名应为corr。
已知这个数据库是安装在windows下,版本8.0.
先下载一个mysql安装文件。
下载安装完毕。
使用mysqlbinlog命令恢复数据文件。
cmd命令进入命令行窗口,使用cd命令进入C:\Program Files\MySQL\MySQL Server 8.0\bin目录
根据需求方提供的日期和时间段,回复目标文件为编号15-17的binlog文件。
执行命令:
mysqlbinlog 文件夹路径\DESKTOP-7CUT1BV-bin.000015 > d:\bin15.txt
mysqlbinlog 文件夹路径\DESKTOP-7CUT1BV-bin.000016 > d:\bin16.txt
mysqlbinlog 文件夹路径\DESKTOP-7CUT1BV-bin.000016 > d:\bin16.txt
获得可读的纯文本文件三个,用记事本或其他可读文本文件应用程序查看。
部分内容如下:
从上图,可解读部分信息:
数据库corr的表qrtz_fired_triggers,映射编号为204.
编号为204的表删除数据行,执行标记结束。
上图则是一个更新表内容的记录。
上图是一个插入数据的记录。
文件的末尾,发现了重建数据库的内容。如图执行了drop database并重新创建数据库corr命令。
至此内容解读完毕,却人在9点34分51秒该数据库被删除并重新创建,原数据被清除,重建后的数据库未再写入数据。