首页 > 编程知识 正文

java吧,如何避免删库跑路事件发生

时间:2023-05-06 06:40:44 阅读:29638 作者:1305

2018年8月2日,是黑暗的一天。 今天我撞到了MySQL的漏洞,不小心删除了整个表格的数据。 那时,我的心死了,很凉爽。 但是我马上报告这个问题,运维立即停止服务,(为什么停止服务? 脑壳想想就知道了),我问了承运人有没有备份。 承运人说备份将在晚上两点进行备份。 使用备份数据的话,今天上午也没有新的数据。 于是我马上命令show veriables like 'log_% '; 检查日志是否打开。 因为感谢mysql打开cxdlslog,所以今天会记录不小心删除库并使用cxdlslog回滚的具体操作。

1、最重要的是,在错误删除库后,及时停止服务,并通知开发人员不要继续写入数据库。 另一方面,复盖日志太大需要回滚的日志

2、我马上show veriables like 'log_% '; 此命令位于cxdlslog的位置,并找到最近的log;

3、cxdlslog是二进制文件vi vim cat,不能直接看到我们想看的东西。 如果我们使用mysql附带的工具查看,则命令:

/usr/local/MySQL/cxd ls/mysqlcxdlslog-- base64-output=' decode-rows '-v/var/log/MySQL/MySQL-cxd ls

输出的日志时,将显示sql语句

4、下面按照https://github.com/danfeng Cao/cxdlslog2SQL链接中的步骤,将在delete中丢失的所有数据回滚到insert语句中

在上面的链接中进行操作时,由于cxdls-log的位置权限不足,mysql无法重新启动,发生了错误。 (starting MySQL.theserverquitwithoutupdatingpidfile )/usr/local/MySQL/MySQL

0nuubf3qbez.pid () ) )解决方法:运行chown-r MySQL : MySQL/var/data“chmod-r755/usr/local/MySQL/data”

这是一次宝贵的经历,这个记录只是记录了删除具体库后如何回滚的想法,剩下的操作需要看到的朋友去尝试!

转载于链接:https://my.oschina.net/u/3689525/blog/1922536

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。