热门
最新
红包
立Flag
投票
同城
我的
发布
@守护石AI:不小心把公司的数据库给drop了,不想跑路的情况下,是否还有机会挽回?
1. 找备份,尽可能找到最近的备份点,但往往能这么问的,都是没做过备份!
2.找归档日志,例如MySQL叫binlog,Oracle叫重做日志redolog,分在线重做和归档重做,postgresql的wal归档日志文件,诸如此类的其他数据库。这些日志都能帮你恢复数据。
3.若发现归档日志也没开,那就麻烦了!首先别再给服务器写数据了,最好先断电,确定操作系统是什么,若是Linux,记住文件名只是对应inode,类似一个文件字典表,inode才对应block(真正的数据块),数据库删除是针对文件清除,也就是删掉了inode表中文件,inode和block的对应关系,实际上block还在,处于释放状态,一旦被新的block数据覆盖了就不好说了,所以不能再朝磁盘里面写数据了。
有些情况也可以不用断电,直接卸载数据库数据目录的分区,重新用只读的方式挂载该分区,但是数据库数据目录就在根分区就要断电,拆盘,以只读方式挂载到其他用来恢复的机器上,借助extundelete工具尝试恢复,看能不能恢复被drop数据库的数据文件。
4.这个也做不到的话,开始责任定性,你是第一责任人肯定要被开除,但是没有做好数据库备份的运维工作,那么你们运维人员就是第二责任人,别告诉我还是你。
总之还是提醒各位一句话,数据库的安全是重中之重的问题,关键工作的方法顺次:打开日志->一机多备->定期备份->事前备份->一备多份。还有千万别跑路!
CSDN App 扫码分享
评论
点赞
打赏
- 复制链接
- 举报