服务器数据恢复环境:
NetApp 某型号存储;
装备 SAS 硬盘,该硬盘 520 字节一个扇区;
所有的 lun 映射到小型机应用,寄存 Oracle 数据库文件,采纳 ASM 裸设施存储形式。
服务器故障:
管理员误操作删除 NetApp 存储上的所有 lun。和管理员沟通后得悉:因为业务变动,须要从新布局存储空间,管理员间接把存储卷全副删除并重新分配。在执行删除操作之后还没有来得及调配的时候,下层业务忽然宕机了。运维工程师紧急排查故障状况,发现业务服务器上的磁盘都不见了,无法访问数据。
服务器数据恢复过程:
1、为了防止在数据恢复过程中对原始数据造成二次毁坏,把故障存储中的每块磁盘以只读形式做齐全镜像,后续的所有数据恢复操作都在镜像文件上进行。
2、剖析 Netapp 存储的存储过程。
a、剖析盘序和 LVM 的组成形式。
b、扫描硬盘内的所有节点。
c、在节点扫描后果中找到文件大小合乎需要的节点并提取此节点。
d、依据索引根内的第一级数据指针提取本文件的所有间接数据指针,在指针提取结束后开始提取文件数据。
3、在硬盘后面的扇区地位查找超级块的相干信息。
netapp 超级块信息:
数据块有数据块形容信息,依据这些信息能够判断出哪些磁盘是校验盘(提取数据时需剔除)。
校验块形容信息:
4、依据每块磁盘的磁盘信息以及磁盘的 RAID 盘序表确定盘序。首先要确定各个磁盘所属 aggr 组,而后再判断组内盘序。
netapp 盘序表:
5、Netapp 的节点散布在数量泛滥的数据块内,在数据块内节点又被对立组织为节点组。每个节点组的局部字节记录一些零碎数据,局部字节为一项来记录各个文件节点。依据用户级别文件节点可分为两类:系统文件节点和用户文件节点。
netapp 节点:
6、获取目录项,依据其节点编号找到对应节点。
目录项信息:
7、剖析好存储构造之后,应用北亚企安自研的 NetApp 解析程序提取数据,解析 asm 文件系统并提取出数据库文件。
8、搭建小机环境,装置 oracle 数据库,验证数据库文件和备份文件。
a、检测数据库文件。应用提取出的数据库文件启动数据库,能够失常启动。
b、检测数据库备份文件。筛选出最新的数据库备份文件,应用筛选出的备份文件还原数据库,通过逐个尝试,没有发现问题。用户亲自验证后确认数据库复原确认无误,本次数据恢复工作实现。