1、首先查看是否开启了mysql数据操作日志,如果没有那记得打开为以后做好准备。
查看的方法如下:
在mysql中执行命令:show variables like ‘%bin%’;
通过上图可以看到我的mysql库是开启log_bin选项的,那么所有涉及到数据库的操作都会被记录保存下来。见下图:
以上文件在mysql的data文件夹下。
如果你的bin-log没有开启,可以打开my.ini文件开启配置:
要恢复就简单了,找到日志中的sql语句即可。为保险起见,先把上面需要的日志文件复制到一个临时文件夹下,比如 /opt/bak/下。由于上面文件是二进制,先使用mysql自带工具恢复成文本的。命令如下:mysqlbinlog –no-defaults mysql-bin.000007 >1.sql
参数–no-defaults一定要带下,不然可能出现mysqlbinlog: unknown variable ‘default-character-set=utf8’这个的错误信息。
找到被删除的记录
将sql语句复制到mysql执行即可。