zoukankan      html  css  js  c++  java
  • 服务器存储误删所有lun的数据恢复解决方案

    NetApp FAS3220是NetApp推出的中端存储阵列,针对NAS和SAN环境构建,被定制为虚拟化、私有云或传统、早先的用途,适用于从几TB到超过2PB的存储需求,提供数据保护,可扩展性,自动精简配置,精简克隆,备份和灾难恢复,下面就讲解NetApp FAS 3220存储的数据恢复的方法。

    本次讲解的NetApp FAS 3220型号的存储,硬件环境是一共96块600G的SAS硬盘,硬盘和普通的硬盘还不一样,这个硬盘的扇区大小是520字节一个扇区,上层应用环境也很复杂,所有的lun都是映射给小型机使用,存放是Oracle数据库文件还是ASM裸设备存储方式。可能是工作人员失误,误操作删除了存储上的是所有lun,据了解当时是要重新规划存储空间,直接把存储卷全部删除进行重新分配。在删除之后还没有分配的时候,上层业务就宕机了,这个时候运维工程师紧急排查故障情况,发现业务服务器上的磁盘都没有了,没有办法访问数据了,发现操作失误,紧急启动数据恢复预案。

    为保护好现场环境,防止数据恢复过程中由于误操作对原始磁盘造成二次破坏,数据恢复工程师把每块磁盘都做只读完全镜像。此后所有恢复操作都在镜像文件上进行。

    在做完镜像的同时,工程师紧急制定了恢复方案,为客户讲解恢复方案的可行性,客户认可方案,做完镜像之后,我们就立即按照制定方案实施,下面是恢复方案的具体实施步骤:

    1、Netapp存储的存储过程分析,

    第一步,分析盘序和LVM的组成方式。

    第二步,扫描硬盘内的所有节点。

    第三步,在节点扫描结果中找到文件大小符合需求的节点并提取此节点。

    第四步,根据索引根内的第一级数据指针提取本文件的所有直接数据指针,在指针提取完毕后开始提取文件数据。

    2、解析超级块

    在硬盘的前面扇区的位置找到超级块相关信息,从超级块中得到相应信息,下图是超级块基本信息:

    3、剔除校验盘

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

    4、判断aggr盘序

    盘序分析时主要依据每块磁盘的磁盘信息以及磁盘的RAID盘序表确定盘序。首先要确定各个磁盘所属aggr组,然后再判断组内盘序,取得数据盘的盘序即可。

    5、节点及节点头部信息分析

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

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

    7、分析好存储结构之后,就开始用NetApp解析程序进行数据的提取了, 解析asm文件系统,提取出数据库文件

    8、搭建小机环境,安装oracle数据库,检测数据库文件和备份文件。

    9、检测数据库文件

    使用提取出的数据库文件启动数据库,正常启动

    10、检测数据库备份文件

    筛选出最新的数据库备份文件,使用筛选出的备份文件还原数据库,经过一一尝试,筛选出最新的可用的数据库备份,还原数据库环境,由客户进行验证,客户对数据库恢复确认无误,此次数据恢复工作圆满成功。


  • 相关阅读:
    开源项目
    [Accessibility] Missing contentDescription attribute on image [可取行]失踪contentDescription属性图像
    Android 布局 中实现适应屏幕大小及组件滚动
    EF 错误记录
    EasyUI 加载时需要显示和隐藏 panel(面板)内容破版问题
    IE 报表缩放后页面破版
    VS 2017 引入nuget 问题
    SSRS 报表显示页面 asp net session丢失或者找不到 asp net session has expired or could not be found()
    log4net 配置
    网站
  • 原文地址:https://www.cnblogs.com/frombyte/p/12144967.html
Copyright © 2011-2022 走看看