服务器数据恢复环境:
华为OceanStor系列服务器;
24块硬盘组成一组raid5盘阵,其中一块硬盘为热备盘。
服务器故障情况:
服务器运行过程中有一块硬盘离线,热备盘激活上线进行数据同步,在数据同步的过程中服务器内另一块硬盘因未知故障离线,服务器上层应用崩溃,服务器数据丢失。服务器管理员联系数据恢复中心寻求帮助。
服务器数据恢复过程:
1、数据恢复中心接到该故障服务器所有硬盘后马上对每块硬盘进行硬件故障检测,最终发现只有一块硬盘存在物理故障。服务器数据恢复工程师对所有硬盘做了镜像备份。
2、分析服务器故障原因。
由于华为s系列服务器的控制器检查磁盘的策略相当严格,对于无物理故障但性能不稳定的硬盘会当作坏盘处理,踢出raid阵列。经过物理故障检测发现只有一块硬盘存在物理故障,因此该服务器掉线的两块盘中另外一块硬盘掉线是因为读写不稳定被踢出。
3、分析服务器raid结构。
恢复lun首先需要分析底层的raid结构信息,根据分析获取的raid信息重组raid。服务器数据恢复工程师对每一块硬盘进行分析,获取到raid阵列的条带大小、数据走向、硬盘顺序、热备盘、数据库的分布规律等基础信息。
4、通过校验排查服务器内被同步硬盘。
根据已经获取到的服务器阵列信息,数据恢复工程师使用自主研发的raid虚拟程序进行raid重组。数据恢复工程师将所有硬盘进行底层数据结构对比,发现了其中一块硬盘在相同条带上的数据与其他硬盘明显不同,使用北亚自主研发的raid校验程序对该硬盘进行条带校验后确认该硬盘已被同步破坏。服务器数据恢复工程师重组raid阵列后分析lun在raid组中的分配情况及数据块map,只要能够完整的将map提取就可恢复lun数据。
5、提取服务器内数据库文件并修复数据库。
服务器数据恢复工程师自主编写了文件系统解析程序对虚拟阵列内的文件系统进行解析,导出数据库文件后移交数据库工程师进行校验和修复。
数据库工程师对数据库文件进行验证发现部分数据库文件及日志文件异常。表空间内存在大量坏块,所有控制文件被破坏,undotbs02丢失,数据库工程师只好对数据库文件进行修复,修复过程见下图:
服务器数据恢复验证:
经过数据库工程师对数据的修复和验证,最终成功恢复数据库数据,工程师将修复成功的数据库数据导入数据恢复专用服务器进行验证,所有数据正常,联系用户亲自进行现场数据验证,确认恢复出来的数据没有问题。
阅读(263) | 评论(0) | 转发(0) |