« DB2 数据库活动日志故障 - SQLOGCTL.LFH | Blog首页 | 关于Freelists和Freelist Groups的研究 »
Oracle数据恢复:格式化,Raid损坏,文件覆盖恢复
作者:eygle | 【转载请注出处】|【云和恩墨 领先的zData数据库一体机 | zCloud PaaS云管平台 | SQM SQL审核平台 | ZDBM 数据库备份一体机】
链接:https://www.eygle.com/archives/2011/11/raid_fileoverwrite_recovery.html
最近接触了几则客户的Oracle数据库恢复案例,记录一下供大家参考。链接:https://www.eygle.com/archives/2011/11/raid_fileoverwrite_recovery.html
案例一:
某客户为了重新部署系统,将数据导出备份到移动硬盘,然后将Raid重新格式化,重新安装系统,当进行Oracle数据库重建,导入数据时发现,移动硬盘上的数据无法正确读取,文件缺失一半。数据灾难形成。
导入数据时出现 IMP-00009 错误,和以下文章描述的状况是相同的:
http://www.eygle.com/archives/2009/05/imp_00009_abnormal_end.html
我到现场进行分析,发现文件的确只复制了一半,丢失了大约200张数据表的数据。通过备份恢复数据已经不可能。
最后只有一种方式,就是从被格式化的硬盘上进行碎片重组,找回数据,最终这条路成功了,通过硬盘恢复找回数据恢复了业务运行。
这个案例给我们的提示是:重要数据,备份需要多留拷贝,在进行备份验证之前,备份的可靠性不能轻信。
案例二:
某用户,SUN的存储阵列,已经持续运行了7年,最后存储的Raid中,同时损坏了两块硬盘,热备盘早已损坏,但是由于存储所有的绿灯都亮,用户一直以为存储正常无故障运行。
此次故障出现,存储罢工,数据库服务无法提供,用户没有备份。
我们到现场,只有一个途径,就是通过存储级别恢复数据,找回文件,虽然磁盘出现故障,但是数据仍然是完好的,通过计算奇偶校验,回复数据,然后最终修复启动了数据库,在数据库级别存在坏块,不一致,通过BBED,隐含参数等,可以成功打开数据库。
这个案例给我们的提示是:硬件和人一样,过劳都会出现灾难,请大家注意健康。
在微博上,有朋友说,硬件总会出问题,要多监控就应当能够及时预警,我的观点是:
再严密的部门,再严密的监控,总有疏忽,这样的疏忽,有很多大牛的公司都犯过,我们也经历过,所以大家应当共同警示吧。细心多一万分不多,粗心就一次致命。
案例三:
某用户,构建大型的ERP系统,在部署初始化环境时,由于疏忽,在安装数据库时,覆盖了原有的一个重要数据库。形成数据灾难。
对于这类操作,通常覆盖的只是SYSTEM表空间、UNDO表空间、Users表空间等,数据表空间通常不会覆盖,但是如果数据结构复杂,通过DUL等工具去抽取数据会根本不可实现。
在2006年我处理过同样一则案例,首先是在存储级别恢复了SYSTEM表空间,排除覆盖掉的部分,大部分数据完好,结合这部分数据和剩余的数据文件,可以较为迅速的恢复数据。
我在微博的记录是:本想早点睡觉,又收到用户的紧急求助电话,用户在安装数据库时,因为疏忽,覆盖了之前载有重要数据的数据库。系统表空间等重要文件被覆盖,又是一个极大的灾难。搞技术的同学们要谨记:在做破坏性、创建性操作时,一定要慎之又慎。
这些案例与大家共为警醒。
历史上的今天...
>> 2015-11-23文章:
>> 2012-11-23文章:
>> 2010-11-23文章:
>> 2009-11-23文章:
>> 2008-11-23文章:
>> 2007-11-23文章:
>> 2006-11-23文章:
>> 2005-11-23文章:
By eygle on 2011-11-23 08:27 | Comments (2) | Backup&Recovery | 2905 |
对鄙人来说,这些活儿全是高精尖科技,以后若是碰上,只能请你出马.
鄙人又以为,定期做备份和测试恢复,就可以完全避免这些极端条件下的恢复,所以我17年以来都没有机会碰到.
-木匠.
服务企业和服务客户不同啊,自己的事情可以自己管好,他人的事情我们只能呼吁了,我呼吁了10年,备份重于一切,可是声音传到的地方有限啊。