今天整理环境时,一时误操作将数据库清空了,幸好是测试环境,不然可就遭殃了
经过查找资料,找到了一种bin-log恢复数据的方式
- mysql版本:5.6
- 数据库配置中开启着binlog (my.cnf中log-bin=mysql-bin 的配置)
- bin-log完整,没有被删除
- 知道删除的具体时间点
如果确保以上都没问题的话,恢复数据还是很简单的,首先看自己数据库还在不在,
不存在需要手动先创库
create database dataname;
恢复数据
mysqlbinlog -vv --base64-output=decode-rows mysql-bin.000001 --stop-datetime='2019-04-10 16:31:59' >/etc/row1.sq
首先确认一共有哪些bin-log文件是需求的,如果有多个,之前的大可都恢复了,最后一个在指定删除的时间,一定要在删除的时间以前点,不然恢复好的数据又会删除。
另外,温馨提示大家,做数据库相关的操作时,一定要备份呦,任何的恢复都不是百分百成功的。