mysql数据意外删除的解决办法:
1、先确认mysql有没有启用bin日志 ,就是看下mysql.ini(my.cnf)里的log-bin=mysql-bin, 可以 自定义一个目录和前缀名,比如/data/log/mylog这样。
2、然后在数据库文件存放的data目录就能看到mysql-bin.00000x这样的文件,这就是二进制日志了,可以导出成txt格式的,里面其实就是对数据库的各种操作sql语句。
3、导出txt文件:
e:\wamp\bin\mysql\mysql5.6.12\bin>mysqlbinlog --database=testdatabase e:\wamp\bin\mysql\mysql5.6.12\data\mysql-bin.000312 > c:\\test1.txt
这是windows下的导出,linux也是类似的。
database=数据库名
从最早的日志还始还原
linux下可以很方便的 mysql-bin.000*
可以加参数开始时间和结束时间,就是你执行那条sql语句的时间
start-datetime="2014-12-04 11:25:56" --stop-datetime="2014-12-04 13:23:50"
4、恢复数据:
e:\wamp\bin\mysql\mysql5.6.12\bin>mysqlbinlog --database=yundongchao e:\wamp\bin\mysql\mysql5.6.12\data\mysql-bin.000179 | mysql -u root -p