博客 blog
当前位置: 首页 > 博客 > 旅行见闻
mysql没备份被意外覆盖了可以还原 mysql误删表里的数据没有备份的情况下恢复的方法
发布日期:2022-05-25 阅读次数:269

今天不知道是怎么了误操作把mysql的数据库给覆盖了,当发现的时候正好是无法恢复了。写了好几天的代码一下没了。重新写?可是不甘心就这样没了,于是立马找恢复文件和数据库的方法。

此时数据库日志解决了这个问题。日志里面有你每次操作数据库的记录,宝塔面板的日志在这个目录: /www/server/data,类似于这样的文件 : mysql-bin.000115

找到相应记录的日志文件后只需要两行代码就可以读出来,首先header设置编码为utf8,因为我的数据库是utf8的,再用 file_get_contents 函数读出日志的文件内容。在浏览器中看到的有一些会是乱码,按右键查看源码,然后用查找的功能在里面找到你操作数据库的表的名称,会有相应的记录。我就是按照这样的方法恢复的。

不管是覆盖了数据还是删除只需要找到原来插入的数据即可。如果数据很复杂且经过多次修改,可以找到最后一次的记录即可。

最后mysql-bin.000115虽然是二进制文件,但是不需要安装软件或其他第三方去解析了,直接用上面说的两行代码就能读取了。

问题解决!但这个办法也是没有办法的办法了。在此提醒操作数据库和文件时一定小心谨慎,养成定期备份的好习惯。


                     
                     

相关内容
随机推荐