mysql之找回误删数据
场景:我们开发阶段,经常要有一些测试数据在我们测试相关功能的时候,是十分必要的.后期由于引入了正式的数据,但是测试数据并没有被及时清理.这个时候由于一个误删除,导致一些正式的数据被删除,由此,一场追找数据的过程就开始了...
解决方案:
1) 通过每天备份的日志进行查找,但是很不幸的是,我们由于没有正式上线,所以数据库的备份脚本一直没有执行中,故此路不通
2) 因为这些数据我是使用的脚本的方式每天跑任务刷进去的数据,所以,都有记录相应的日志,会将其整个过程都进行打印出来,于是,就开始查找相应的日志文件,但是不巧的是,那次的数据是手动执行掉的,没有相应的数据重定向到日志文件中, 故事就是这么狗血!!!
3) 没有其他的路了,只能借助强大的mysqlbinlog工具了
条件:
1. 确定你的binlog功能已经开启,因为安装成功MySQL之后,默认的是并不进行开启的,所以,可以进行查看是否开启
如果是On是开启的,如果没有开启则会显示OFF
2.如果是开启的情况
会在相应的目录下找到类似这样的文件:
3.将需要的文件进行恢复处理 因为你直接打开会显示的二进制的内容
1 2 3 | mysqlbinlog --no-defaults C:\Users\Administrator\Desktop\mysql-bin.000042 > mysql_restore.sql //mysql_restore.sql解析出来的SQL文件 |
接下来,就可以愉快的找回SQL了
常见错误:
1)
解决: --no-defaults
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)