Chinaunix首页 | 论坛 | 博客
  • 博客访问: 337091
  • 博文数量: 586
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5905
  • 用 户 组: 普通用户
  • 注册时间: 2016-08-02 14:16
文章分类

全部博文(586)

文章存档

2024年(151)

2023年(218)

2022年(181)

2020年(12)

2019年(24)

我的朋友

分类: 服务器与存储

2023-02-15 14:42:14

服务器数据恢复环境:
NetApp某型号存储;
配备SAS硬盘,该硬盘520字节一个扇区;
所有的lun映射到小型机使用,存放Oracle数据库文件,采用ASM裸设备存储方式。


服务器故障:
管理员误操作删除NetApp存储上的所有lun。和管理员沟通后得知:因为业务变化,需要重新规划存储空间,管理员直接把存储卷全部删除并重新分配。在执行删除操作之后还没有来得及分配的时候,上层业务突然宕机了。运维工程师紧急排查故障情况,发现业务服务器上的磁盘都不见了,无法访问数据。




服务器数据恢复过程:
1、为了避免在数据恢复过程中对原始数据造成二次破坏,把故障存储中的每块磁盘以只读方式做完全镜像,后续的所有数据恢复操作都在镜像文件上进行。
2、分析Netapp存储的存储过程。
a、分析盘序和LVM的组成方式。
b、扫描硬盘内的所有节点。
c、在节点扫描结果中找到文件大小符合需求的节点并提取此节点。
d、根据索引根内的{BANNED}中国第一级数据指针提取本文件的所有直接数据指针,在指针提取完毕后开始提取文件数据。
3、在硬盘前面的扇区位置查找超级块的相关信息。
netapp超级块信息:



数据块有数据块描述信息,根据这些信息可以判断出哪些磁盘是校验盘(提取数据时需剔除)。
校验块描述信息:



4、根据每块磁盘的磁盘信息以及磁盘的RAID盘序表确定盘序。首先要确定各个磁盘所属aggr组,然后再判断组内盘序。
netapp盘序表:



5、Netapp的节点分布在数量众多的数据块内,在数据块内节点又被统一组织为节点组。每个节点组的部分字节记录一些系统数据,部分字节为一项来记录各个文件节点。根据用户级别文件节点可分为两类:系统文件节点和用户文件节点。 
netapp节点:



6、获取目录项,根据其节点编号找到对应节点。
目录项信息:



7、分析好存储结构之后,使用北亚企安自研的NetApp解析程序提取数据,解析asm文件系统并提取出数据库文件。



8、搭建小机环境,安装oracle数据库,验证数据库文件和备份文件。
a、检测数据库文件。使用提取出的数据库文件启动数据库,可以正常启动。
b、检测数据库备份文件。筛选出{BANNED}最佳新的数据库备份文件,使用筛选出的备份文件还原数据库,经过逐一尝试,没有发现问题。用户亲自验证后确认数据库恢复确认无误,本次数据恢复工作完成。
阅读(130) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~