SUN平台下光纤共享存储互斥失败导致的数据灾难恢复

[数据恢复故障描述]

两台SPARC SOLARIS系统通过光纤交换机共享同一存储,本意是作为CLUSTER使用,但配置不当,两台SERVER并未很好地对存储互斥,设计意图为:平时A服务器正常工作,当A服务器宕掉后,关掉A,开启B接管服务。

偶然的机会,一位管理人员开启B服务器,查到B服务器连接了一组很大的磁盘(实际上就是那个共享存储),因B服务器一直闲置未用,管理员以为磁盘也是闲置的,于是将整个磁盘的某个分区做了newfs。

A服务器很快报警并宕机,重启A服务器后,发现所有的文件系统均无法mount,执行fsck后,大多数分区的数据均修复成功,只有在B机做过newfs的文件系统结果不理想,根目录下只有一个lost+found文件夹,里面有大量数字标号的文件。

故障文件系统存储了两组ORACLE实例,原结构为UFS,约有200~400个数据文件需要恢复。

[数据恢复分析]

光纤设备的共享冲突案例很多,起缘于光纤交换的灵活性。此例中,A机与B机同时对UFS这个单机文件系统进行访问是很糟糕的,两台SERVER都以想当然的独享方式对存储进行管理,A机正常管理的文件系统其实底层上已经被B机做了文件系统初始化,A机从缓冲区写入文件系统的数据也会破坏B机初始化的结果。

B机newfs实际上直接会作用于原先的文件系统之上,但此例与单纯的newfs会有些不同,在A机宕机之前,会有一小部分数据(包括元数据)回写回文件系统。newfs如果结构与之前的相同,数据区是不会被破坏的,同时如果有一小部分元数据存在,部分数据恢复的可能性还是存在的。

UFS是传统的UNIX文件系统,以块组切割,每块组分配若干固定的inode区。文件系统newfs时,如果结构与之前的相同,文件系统最重要的inode区便会全部初始化,之前的无法保留,inode管理着所有文件的重要属性,所以单纯从文件系统角度考虑,数据恢复的难度很大。

好在oracle数据文件的结构性很强,同时UFS文件系统还是有一定的存储规律性,可以通过对oracle数据文件的结构重组,直接将数据文件、控制文件、日志等恢复出来。同时oracle数据文件本身会有表名称描述,也可以反向推断原来的磁盘文件名。

[数据恢复过程]

对故障的文件系统做dd备份。

针对整个镜像文件做完全的oracle数据结构分析、重组。

对部分结构太乱,无法重组的文件,参考ufs文件系统结构特征进行辅助分析。

利用恢复的数据文件、控制文件在oracle平台恢复数据库。

[数据恢复结论]

所有数据库完全恢复。

[后记]

fsck是很致命的操作,在fsck之前最好做好备份(dd即可)。

光纤存储的不互斥是非常多的数据灾难原因,方案应谨慎部署与实施。

本文出自 “张宇(数据恢复)” 博客,请务必保留此出处http://zhangyu.blog.51cto.com/197148/152186

时间: 2024-10-03 16:44:45

SUN平台下光纤共享存储互斥失败导致的数据灾难恢复的相关文章

SNW 2014中国大会以“第三平台下的新存储”主题

SNW 2014中国大会即将召开 类型:转载 作者:计世网 时间:2014-05-04 14:26:52 由全球网络存储工业协会(SNIA)和计算机世界报社共同主办的"SNW 2014中国"大会将于2014年6月19日在北京召开.本届大会以"第三平台下的新存储"主题,将邀请国际.国内的存储专家和IT分析师做大会主题演讲,全面阐释大数据和云计算新的发展趋势,软件定义数据中心.融合基础架构以及存储领域创新技术也将成为重点话题.同时,业内领先的存储厂商将在会上展示其先进的

XP系统下共享打印机连接失败怎么办

XP系统下共享打印机连接失败怎么办   WinXP下共享打印机连接失败,首先要想到的问题就是重新连接打印服务器,连接成功后才需要考虑下一步操作. 打印机共享具体步骤如下: 1.配置打印机主机 首先我们要在主机上配置打印机.我们暂且称直接连接打印机的电脑为"主机",而局域网内其他需要和主机共享打印的电脑称为"客户机". 第一步:将打印机连接至主机,打开打印机电源,通过主机的"控制面板"进入到"打印机和传真"文件夹,在空白处单击鼠

WinXP下共享打印机连接失败如何紧急处理

  WinXP下共享打印机连接失败,首先要想到的问题就是重新连接打印服务器,连接成功后才需要考虑下一步操作. 打印机共享具体步骤如下: 1.配置打印机主机 首先我们要在主机上配置打印机.我们暂且称直接连接打印机的电脑为"主机",而局域网内其他需要和主机共享打印的电脑称为"客户机". 第一步:将打印机连接至主机,打开打印机电源,通过主机的"控制面板"进入到"打印机和传真"文件夹,在空白处单击鼠标右键,选择"添加打印机&

不同WINDOWS平台下磁盘逻辑扇区的直接读写

不同WINDOWS平台下磁盘逻辑扇区的直接读写 关键字:VWIN32.中断.DeviceIoControl 一.概述 在DOS操作系统下,通过BIOS的INT13.DOS的INT25(绝对读).INT26(绝对写)等功能调用实现对磁盘逻辑扇区或物理扇区的读写是很方便的,C语言中还有对应上述功能调用的函数:biosdisk.absread和abswrite等.但在WINDOWS操作系统下编写WIN32应用程序时却再也不能直接使用上述的中断调用或函数了.那么,在WINDOWS操作系统下能不能实现磁盘

Windows及Linux平台下的计时函数总结

本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒.毫秒.微秒三种精度的各种函数. 比如Window平台下特有的Windows API函数GetTickCount().timeGetTime().及QueryPerformanceCounter(), Linux平台下特有的gettimeofday()函数,以及标准的C/C++函数time()和clock().下面分别对此进行简单介绍并附上示例代码. 通用的C/C++计时函数time()和clock() time_t ti

如何在Win9x/2k下建立共享目录

在Windows中建立一个共享目录,通常是使用NetShareAdd函数.但是在Win2k和Win9x下,这个函数分别是包含在Netapi32.dll和Svrapi.dll中. 那么如果直接在程序中使用Netapi32.lib或Svrapi.lib,在不同的操作系统下运行时会发生找不到xxx函数的输出错误. 解决的办法就是通过GetProcAddress动态获取NetShareAdd.正好ccrun在csdn回答一位网友的问题,顺便写了些代码,在这里贴出来. 注: 1. 以下代码已在Win2k

CSDN专访:大数据时代下的商业存储

原文地址:http://www.csdn.net/article/2014-06-03/2820044-cloud-emc-hadoop 摘要:EMC公司作为全球信息存储及管理产品方面的领先公司,不久前,EMC宣布收购DSSD加强和巩固了其在行业内的领导地位,日前我们有幸采访到EMC中国的张安站,他就大数据.商业存储.Spark等给大家分享了自己的看法. 谈到大数据,张安站认为大数据本质上是两个根本性的问题,一个是数据很大,如何存储?另外一个是数据很大,如何分析?第一个问题,对于存储厂商来说,就

NAS网站存储平台 Web背后的存储

Web服务是Internet中最为重要的应用,它是实现信息发布.资料查询.数据处理.视频点播等诸多应用的基本平台.对ISP和提供大量信息服务的其他单位,如高校.杂志社.公司,为了加强资料的丰富性,需要建立巨大的资料库,以建立竞争优势,为用户提供更加完美的服务.通常情况下,来自不同Web站点的不同Web页面请求,会由同一台计算机响应.查询.传送.这样,该Web服务器的性能将影响浏览的速度. 而且当网站中的文件较多,特别是网站中包含大量的多媒体文件或程序时,如何提供Web站点对大容量存储设备的要求,

云计算环境下的云存储,安全吗?

先说云计算: 被喻为第四次信息革命开端,云计算充分使用互联网的渗透性,并与移动互联装置完美融合,为用户提供了几乎无所不能的超级服务! 基于云计算背景下的云数据,具有以下几个显著特点: 1.云存储服务类型 : 2.完美兼容MySQL协议.高性能.高可靠.易用.便捷的MySQL集群服务 :3.兼具备份.扩容.迁移等功能,用户可以方便的进行数据库的管理:4.高度的虚拟化包括服务器.存储.网络.应用等虚拟化等:5.更加智能化.自动化.便捷化.规模化和标准化 云存储的一大优势在于其弹性,其实更准确说最初云