分享

DBA生存警示:备份级误操作案例及防范建议

 光辉岁月3 2016-03-31


我们曾经反复强调:备份重于一切

可是很多人在执行备份时,依然会遭遇因为备份而导致的误操作故障。



案例分享



1.无备份导致数据损毁

刚才同事告诉我,以前我的顶头上司,IT经理引咎辞职了,仔细一问,原来是我的继任没有做备份,资料全部损毁,这也是我今年第二次见到这种情况。当时走的时候,招了一个月也没有招到合适的,后来听同事说,从香港找了一个DBA,一个月几万块,没想到没出多久就出了这么大的事。

以前也有客户的DBA损毁数据库而且没有做备份,导致工厂停产半个月,IT经理走人的教训,现在不敬业的人还是那么多。


2.误操作TAR覆盖数据

半夜加班,系统上线和数据迁移一起,在开始前进行了冷备,当上线和数据迁移要完的时候,当时不知道怎么想的,可能是半夜脑壳发昏,就解压TAR把当前文件数据覆盖了,幸好当时意识到了,终止了解压,并且被覆盖的数据文件还没有数据,当时赶快把数据文件离线,删除,重建,不然要被旁边的同事海揍。


3.备份时文件缺失

数据库运行在非归档,冷备时少了一个文件(别的同事做的备份),过了几天恢复数据库,用当时的冷备恢复,结果数据库起不来,丢失的文件还包括很多重要应用字典数据,没办法,重新输入这些字典数据,花了三天三夜

还有几个月前做测试,连到了生产库,把几个表空间删除了,出了一身冷汗!幸好是晚上,没有什么应用,及时恢复了数据库。


4.断电导致数据丢失

有一次大厦停电,通知半夜12点停电,我就懒得去动数据库了,没有备份,结果第二天早上,磁盘阵列启动不了了。丢了周五一天的数据。我才发现不能想当地认为什么都不用做,这个错误让我更加记住了大家常说的“备份重于一切”。


5.误操作覆盖导出文件

imp用错了exp,结果把原来的dmp文件覆盖了。数据丢了,幸运的是数据不太重要。历史账单数据,一年刚好到期,可以封存了。当时我很想告诉领导是我误操作,不过最后还是没有勇气去承认。人就是人,不是神。


防范建议



1.执行的操作系统命令需要经过测试

很多操作系统级别的命令都具有一定的危险性,如rm、mv、tar等,如果不理解这些命令的具体含义和参数意义,那就可能犯下无法挽回的错误。

所以,需要执行的每条命令,都要经过测试,确保其有确定的输出结果,然后才去执行它。如果你某个命令没有把握,那永远不要去执行它


2.执行备份并且进行备份检查

很多企业觉得有了备份就高枕无忧了,可是备份和“有效备份”还是两回事,我们一定要检查备份成功与否,备份是否有效,这样才能保证危急关头有“备”无患。


3.通过文档准备完善操作流程

在执行任务之前,准备文档手册,通过测试验证可行性,并且在执行时按照文档操作,确保不要节外生枝。

俗话说:台上一分钟,台下十年功。只有在台下做好准备,台上的一分钟表演才能完美流畅;而如果台下只花一分钟准备,那么台上来收尾恐怕就要十年功。这样的案例比比皆是。所以,多做些准备工作,磨刀不误砍柴工。


以上内容摘录自盖国强《OracleDBA手记4数据安全警示录》。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多