客户是河北省某市某**部门,一次存储损坏,造成数据全部丢失,存储上主要数据是三个oracle11.2.0.2数据库,上面运行全市的一套公共管理系统。
物理架构:
服务器为曙光4U服务器,共两台。存储为曙光某型存储,其中一个盘柜上有10块光纤磁盘做的RAID5,分成三组LUN,供两台服务器使用。
逻辑架构:
服务器OS为SUSE Linux Enterprise Server 10 x64,安装Oracle11.2.0.2 数据库,两台服务器做的双节点RAC,Oracle存储方式为ASM,三个LUN组成的外部冗余方式的磁盘组。此RAC上跑有3个数据库。
存储损坏后,运维公司对存储做了一系列操作,存储控制在日志中显示被初始化,强制online磁盘已不可能,只得开始一层层抽丝剥茧。
整体过程:
1. 镜像磁盘。磁盘坏道不多,几百个坏道。
2. 重组RAID。通过 oracle 数据文件和ASM底层结构很快分析出RAID结构。
3. 再次将重组RAID后的三个LUN镜像。
4. 通过内部软件提取ASM中的数据。
5. 修改oracle环境,修复和强制拉起数据库。
6. 使用oracle的exp或 expdp 方式导出数据。
7. 重建RAC环境,将导出的数据导入。
此应用系统较庞大,函数、存储过程和触发巨多,这对“修改oracle环境,修复和强制拉起数据库” 要求较高,而且损坏的时候系统正繁忙,数据库损坏较为严重,其中修复过程困难重重,其中一个库连控制文件和 system 表空间也有损坏。
一、硬盘分区丢失数据恢复:
支持的分区故障类型:
Ghost重装系统后分区被合并;
Ghost备份后分区数量改变;
误删除分区(删除所有分区或者删除单个分区);
重新分区后数据丢失;
笔记电脑一键还原后多个分区变成一个大分区等。
扫描丢失分区:在没有覆盖的前提下,可以扫描到丢失的分区,并且恢复分区;
分区表备份:备份当前状态的磁盘分区表信息,一旦分区损坏或丢失时,方便恢复到当前状态;
分区表恢复:用事先备份好的分区表信息恢复成备份时的状态;
分区表重建:扫描出来分区,选取正确的分区后进行重建分区表,即可恢复分区。
二、常用的数据恢复功能
适用于数据恢复故障:误删除、误格式化、文件系统损坏、误装系统、Ghost分区对分区覆盖等数据丢失的问题。
全盘扫描:主要用于文件系统损坏、扫描丢失分区失败、以及其他数据恢复效果不好时,全盘扫描可以虚构出分区信息并提高数据恢复的成功率;
分区扫描:主要用于分区数据被删除、分区的文件系统无法打开,分区提示格式化、分区被格式化等问题,使用分区扫描即可恢复数据。