数据库数据恢复—RAID5上层Sql Server数据库数据恢复案例

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 服务器数据恢复环境:一台安装windows server操作系统的服务器。一组由8块硬盘组建的RAID5,划分LUN供这台服务器使用。在windows服务器内装有SqlServer数据库。存储空间LUN划分了两个逻辑分区。服务器故障&初检:由于未知原因,Sql Server数据库文件丢失,丢失数据涉及到3个库,表的数量有3000左右。数据库文件丢失原因还没有查清楚,也不能确定数据存储位置。数据库文件丢失后服务器仍处于开机状态,所幸没有大量数据写入。将raid5中所有磁盘编号后取出,经过硬件工程师检测,没有发现明显的硬件故障。以只读方式将所有磁盘进行扇区级的全盘镜像,镜像完成后将所

服务器数据恢复环境:
一台安装windows server操作系统的服务器。一组由8块硬盘组建的RAID5,划分LUN供这台服务器使用。
在windows服务器内装有SqlServer数据库。存储空间LUN划分了两个逻辑分区。

服务器故障&初检:
由于未知原因,Sql Server数据库文件丢失,丢失数据涉及到3个库,表的数量有3000左右。数据库文件丢失原因还没有查清楚,也不能确定数据存储位置。
数据库文件丢失后服务器仍处于开机状态,所幸没有大量数据写入。
将raid5中所有磁盘编号后取出,经过硬件工程师检测,没有发现明显的硬件故障。以只读方式将所有磁盘进行扇区级的全盘镜像,镜像完成后将所有磁盘按照编号还原到原硬盘槽位。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
1、基于镜像文件分析所有硬盘的底层数据,获取该组RAID5相关信息及内部数据块信息,利用这些获取到的信息虚拟重组RAID。
重组RAID:
01副本.jpg
2、完成raid5阵列重组后,提取LUN内两个分区的镜像。
3、扫描文件系统内丢失的文件,但是没有找到丢失的数据库文件,在文件系统层面无法恢复数据。

服务器数据恢复过程:
1、通过初检确定无法从文件系统层面恢复数据后,北亚企安数据恢复工程师只能采取通过扫描数据页并提取页内记录的方案恢复数据库数据。
2、使用北亚企安自主开发的数据页扫描程序扫描&提取分区内的数据页。在扫描两个分区的镜像后发现一个分区(系统分区)内数据页数量极少且数据页断裂情况严重;另一分区内扫描到数据页个数较多了,应该就是数据库文件的存储空间。
扫描数据页:
02副本.jpg

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

5、分别提取三个丢失的数据库中各表的表结构信息。
提取表结构信息:
04副本.jpg

6、解析表结构脚本。将各表的列信息存入数据库内。
扫描脚本文件:
05副本.jpg

将表结构信息存入数据库:
06副本.jpg

7、解析系统表获取用户表id信息、关联表结构与数据页。
8、新建数据库,使用北亚企安自主开发的程序解析记录并导入到新建的数据库环境内。
9、整理恢复结果。在数据库文件所在的分区内除了数据库文件,还存放有备份文件,所以在导出的记录中应该存在重复的数据,必须将数据去重。北亚企安数据恢复工程师编写SQL存储过程对数据进行去重。
数据库去重:
07副本.jpg

10、处理完数据后交由用户方验证数据。用户方对数据进行检查后确认恢复出来的数据有效。在数据恢复工程师的协助下,用户方将恢复出来的数据迁移到准备好的存储设备中。本次数据恢复工作完成。

相关文章
|
2月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
282 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
1月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
122 6
|
2月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
|
2月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
2月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
213 8
|
2月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
|
7月前
|
SQL 数据库 数据安全/隐私保护
数据库数据恢复——sql server数据库被加密的数据恢复案例
SQL server数据库数据故障: SQL server数据库被加密,无法使用。 数据库MDF、LDF、log日志文件名字被篡改。 数据库备份被加密,文件名字被篡改。
|
3月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
230 5
|
4月前
|
SQL 存储 数据库
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
819 0
|
4月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
388 0