服务器数据恢复环境:
某品牌StorageWorks服务器;
8块SAS硬盘组成raid5,一块热备盘。
服务器故障:
服务器运行过程中有两块硬盘先后离线,服务器瘫痪,lun无奈失常应用。服务器管理员分割咱们数据恢复核心进行数据恢复。
咱们数据恢复核心的服务器数据恢复工程师对服务器中所有磁盘进行物理检测和坏道检测,没有发现问题。
服务器数据恢复流程:
1、对故障服务器所有硬盘做镜像,以防在数据恢复过程中对原始数据造成二次毁坏。
备份的局部数据如下图:
2、服务器故障起因剖析:
目前初步理解的状况为基于RAID组的LUN有6个,均调配给HP-Unix小机应用,下层做的LVM逻辑卷,重要数据为Oracle数据库及OA服务端。一旦故障服务器中的某些磁盘性能不稳固,该型号服务器中的控制器会将其认为是坏盘的磁盘踢出RAID组。而一旦RAID组中掉线的盘达到RAID级别容许掉盘的极限,那么这个RAID将不可用,服务器瘫痪。
3、剖析服务器RAID组构造:
服务器的LUN都是基于RAID组的,要想复原服务器数据就须要先剖析底层RAID组的信息,而后依据剖析的信息重构原始的RAID组。服务器数据恢复工程师剖析所有硬盘后发现4号盘的数据同其余盘不太一样,初步认为是hot Spare盘。接着剖析其余数据盘,剖析Oracle数据库页在每个磁盘中散布的状况,并依据数据分布的状况获取到
RAID组的条带大小,磁盘程序及数据走向等RAID组的重要信息。
4、剖析服务器RAID组掉线盘:
根据上述剖析的RAID信息,通过北亚自主开发的RAID虚构重组程序将原始的RAID组虚构进去。但因为整个RAID组中一共掉线两块盘,因而须要剖析这两块硬盘掉线的程序。仔细分析每一块硬盘数据,发现有一块硬盘在同一个条带上的数据和其余硬盘显著不一样,因而初步判断此硬盘可能是最先掉线的,通过北亚自主开发的RAID校验程序对这个条带做校验,最终确定最先掉线的硬盘。
5、剖析RAID组中的LUN信息:
因为LUN是基于RAID组的,因而须要根据上述剖析的信息将RAID组最新的状态虚构进去,而后剖析LUN在RAID组中的分配情况,以及LUN调配的数据块MAP。因为底层有6个LUN,因而只须要将每一个LUN的数据块散布MAP提取进去,而后针对这些信息编写相应的程序,对所有LUN的数据MAP做解析,而后依据数据MAP导出所有LUN的数据。
导出的数据如下图:
6、服务器LVM逻辑卷及VXFS文件系统修复:
服务器数据恢复工程师剖析所有生成进去的LUN,发现所有LUN中均蕴含HP-Unix的LVM逻辑卷信息。数据恢复工程师尝试解析每个LUN中的LVM信息,发现一共有三套LVM:45G的LVM中划分了一个LV,寄存OA服务器端的数据;190G的LVM中划分了一个LV,寄存长期备份数据;残余4个LUN组成一个2.1T左右的LVM,划分了一个LV,寄存Oracle数据库文件。
服务器数据恢复工程师编写解释LVM的程序,尝试将每套LVM中的LV卷都解释进去,但发现解释程序出错。仔细分析程序报错的起因,开发工程师debug程序出错的地位,文件系统工程师对复原的LUN做检测,检测LVM信息是否会因存储瘫痪导致LMV逻辑卷的信息损坏。通过检测发现的确因为存储瘫痪导致LVM信息损坏。
尝试人工对损坏的区域进行修复,并同步批改程序,从新解析LVM逻辑卷。
搭建HP-Unix环境,将解释进去的LV卷映射到HP-Unix,并尝试Mount文件系统,后果Mount文件系统出错。尝试应用“fsck –F vxfs”命令修复vxfs文件系统,修复后还是不能挂载。狐疑底层vxfs文件系统的局部元数据可能毁坏,须要进行手工修复。
仔细分析解析进去的LV,并依据VXFS文件系统的底层构造校验此文件系统是否残缺。剖析发现底层VXFS文件系统果然有问题,原来存储瘫痪的同时此文件系统正在执行IO操作,因而导致局部文件系统元文件没有更新和损坏。数据恢复工程师对这些损坏的元文件进行手工修复,保障VXFS文件系统可能失常解析。再次将修复好的LV卷挂载到HP-Unix小机上,尝试Mount文件系统,文件系统没有报错,胜利挂载。
7、检测Oracle数据库文件并启动数据库:
在HP-Unix机器上mount文件系统后,将所有用户数据均备份至指定磁盘空间。所有用户数据大小在1.2TB左右。
局部文件目录截图如下:
应用Oracle数据库文件检测工具检测每个数据库文件是否残缺,没有发现错误。应用北亚自主研发的Oracle数据库检测工具检测,发现局部数据库文件和日志文件校验不统一,数据库数据恢复工程师对此类文件进行修复并校验,直到所有文件校验均齐全通过。
将复原进去的Oracle数据库附加到原始生产环境的HP-Unix服务器中,尝试启动Oracle数据库,Oracle数据库启动胜利。
8、启动Oracle数据库,启动OA服务端,在本地电脑上装置OA客户端。通过OA客户端对最新的数据记录以及历史数据记录进行验证,并且有安顿不同部门人员进行近程验证。最终数据验证无误,数据残缺,数据恢复胜利。