数据库数据恢复—Sql Server数据库文件丢失丢失怎么恢复数据?

数据库数据恢复环境:

5块硬盘组建一组RAID5阵列,划分LUN供windows系统服务器使用。windows系统服务器内运行了Sql Server数据库,存储空间在操作系统层面划分了三个逻辑分区。

数据库故障:

数据库文件丢失,主要涉及3个数据库,数千张表。数据库文件丢失原因未知,不能确定丢失的数据库文件的存放位置。数据库文件丢失后,服务器仍处于开机状态,所幸未写入大量数据。

数据库数据恢复过程:

1、镜像备份过程不在这里赘述,后续所有的数据分析和数据恢复操作都基于镜像文件进行。

2、基于镜像文件分析所有磁盘的底层数据,获取重组RAID所需信息。根据获取到的raid相关信息内部数据块信息重组RAID。

3、完成raid重组后,提取LUN的三个分区的镜像。扫描文件系统内丢失文件,但是没有找到丢失的数据库文件,从文件系统角度无法恢复丢失的数据库文件。

4、使用北亚企安自主开发的扫描程序扫描分区内数据页并进行提取。经过扫描发现一个分区中数据页数量极少且数据页断裂情况严重,另一分区内扫描到的数据页较多,初步判断此分区为丢失的数据库文件的存储空间。

扫描数据页:

5、Sql Server数据库使用系统表来管理所有用户表,在这些系统表内记录了各表的列数、数据类型及约束信息等。在解析系统表过程中发现提取出的数据页内系统表损坏,无法正常读取信息。在与用户方进行沟通后得知故障数据库有备份文件,且备份完成后表结构没有进行过大的改动,系统表可用。

6、还原备份。

7、分别提取三个库中各表的表结构信息。

8、解析表结构脚本,将各表的列信息存入数据库内便于后续使用。

扫描脚本文件:

表结构信息存入数据库:

9、解析系统表获取用户表id信息、关联表结构与数据页。

10、新建数据库,使用北亚企安自主开发的软件解析记录并导入到准备好的环境内。

11、在数据库文件所在的分区内除了数据库文件外还有若干备份文件,所以在导出记录后可能存在重复数据,需要去重。北亚企安数据恢复工程师编写小程序进行去重。

数据库去重:

12、数据处理完成后,由用户方工程师对恢复出来的数据进行检验,经过查验用户方表示数据可以接受,移交数据到用户方准备好的存储中。本次数据恢复工作完成。

相关推荐
Amd7947 天前
备份与恢复策略
数据恢复·数据安全·数据备份·数据保护·备份策略·灾难恢复·mysql备份
北亚数据恢复10 天前
UNIX数据恢复—UNIX系统常见故障问题和数据恢复方案
数据恢复·unix·服务器数据恢复·存储数据恢复·unix数据恢复
北亚数据恢复12 天前
服务器数据恢复—热备盘上线过程中硬盘离线导致raid5阵列崩溃的数据恢复案例
数据恢复·服务器数据恢复·北亚数据恢复·raid5数据恢复
北亚数据恢复14 天前
数据库数据恢复—ORACLE常见故障有哪些?如何恢复数据?
数据恢复·服务器数据恢复·北亚数据恢复·oracle数据恢复
北亚数据恢复18 天前
服务器数据恢复—服务器raid0阵列硬盘指示灯显示黄颜色的数据恢复案例
数据恢复·服务器数据恢复·raid5数据恢复·磁盘阵列数据恢复
易我数据恢复大师23 天前
文件从电脑上删除后,去了哪里?
电脑·数据恢复·it·删除
北亚数据恢复2 个月前
服务器数据恢复—RAID5阵列硬盘坏道掉线导致存储不可用的数据恢复案例
数据恢复·服务器数据恢复·北亚数据恢复·raid5数据恢复
北亚数据恢复2 个月前
服务器数据恢复—EVA存储上VDISK被删除如何恢复数据?
数据恢复·服务器数据恢复·存储数据恢复
北亚数据恢复2 个月前
服务器数据恢复—SAN环境中LUN映射错误导致文件系统一致性出错的数据恢复案例
数据恢复·服务器数据恢复·存储数据恢复
北亚数据恢复2 个月前
服务器数据恢复—异常断电导致服务器挂载分区无法访问的数据恢复案例
数据恢复·服务器数据恢复·北亚数据恢复