服务器数据恢复环境:
服务器中有一组由6块磁盘组建的RAID6磁盘阵列。服务器作为WEB服务器使用,上面运行了MYSQL数据库以及存放了网站代码和其他数据文件。
服务器故障:
在服务器运行过程中该raid6阵列中有两块磁盘先后离线,但是管理员没有注意到这个问题,没有及时更换磁盘。当该raid6阵列中的第三块磁盘离线时该raid6阵列崩溃,服务器中的数据全部丢失。用户方在故障发生后立即让当地数据恢复服务商恢复数据。经过该数据恢复服务商的操作后,仍有近一个月的数据没有恢复出来,MYSQL数据库严重损坏。
服务器数据恢复过程:
1、将故障服务器raid6磁盘阵列中的6块磁盘以只读方式全盘镜像备份到北亚企安数据恢复中心的存储池中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。镜像完成后将所有磁盘按照原样还原到故障服务器中。
2、基于镜像文件分析后。发现最先离线的两块离线磁盘其实很早就已经离线,很长一段时间已经没有写入新的数据了。
3、基于镜像文件对底层数据进行分析,发现故障RAID6阵列采用的是双校验:第一个校验是由普通的XOR运算生成,而第二个校验是由Reed-Solomon算法生成。
4、故障服务器RAID6阵列中两块早离线的磁盘已经很长一段时间不写入新数据了,所以要想完整恢复数据就必须运用第二个由Reed-Solomon算法生成的校验,否则会导致最新的数据丢失。当时行业中还没有现成的数据恢复类软件能解决这个问题,虽然有部分软件设计了这一功能,但只是摆设而已。这也就是之前这家数据恢复服务商没能够完整恢复所有数据的原因所在。
5、北亚企安数据恢复工程师分析出原RAID6的结构等相关参数,使用北亚企安自主编写的RAID6恢复软件生成出一个完整镜像。将生成的镜像导回用户方用新磁盘搭建好的服务器环境中,开机一切正常。
6、经过用户方的多方面反复验证,确认恢复出来的数据完整有效,没有任何问题。本次数据恢复工作完成。