当前位置:网站首页>【数据库数据恢复】SQL Server数据库磁盘空间不足的数据恢复案例
【数据库数据恢复】SQL Server数据库磁盘空间不足的数据恢复案例
2022-07-28 00:35:00 【北亚数据恢复】
数据库数据恢复环境:
某品牌服务器存储有2组raid,一组raid1(2块硬盘),一组raid5(5块硬盘);
存放有SqlServer数据库。
数据库故障:
存放SqlServer数据库的分区由于数据量增加而导致原来划分的空间不足,管理员在另外一个分区中生成了一个.ndf文件并将数据库路径指向这个分区继续使用,一段时间后数据库出现故障报错,提示连接失效,SqlServer数据库无法附加查询。管理员于是进行尝试性数据恢复操作没有成功恢复数据,于是联系我们数据恢复中心进行数据恢复。
数据库数据恢复过程:
1、备份数据。服务器数据恢复工程师将故障服务器存储的所有磁盘都镜像备份。
2、数据库故障分析。由于SqlServer数据库文件所在磁盘分区空间不足,数据库无法正常运行,出现逻辑错误。分析存储中RAID1和RAID5的结构,根据获取到的raid信息分别虚拟重组出RAID1和RAID5并查看其中数据。 由于在数据库发生故障之后,管理员尝试过多次在原环境恢复数据库的数据,原始数据库文件被更改、覆盖,磁盘空间被多次重复擦除写入,所以无法使用管理员多次尝试恢复之后的数据库文件进行修复。 好在管理员在数据库发生故障,尝试进行恢复之前备份过一份数据库文件。
3、数据库修复。将之前备份的数据库文件尝试在数据库中附加,结果附加失败,错误提示如下:

错误提示主数据库文件和次级数据库文件不匹配,数据库数据恢复工程师查看.ndf文件底层,发现.ndf文件中几乎没有数据。尝试取消.mdf文件和.ndf文件之间关联,只用.mdf文件进行附加仍然出现错误提示:

错误提示日志文件(.ldf)和数据库文件(.mdf)不匹配。 于是数据库数据恢复工程师尝试对数据库进行无数据库附加,附加成功。但是发现数据库系统表损坏,无法正常使用。

数据库数据恢复工程师对数据库的系统表尝试修复,但是系统表损坏严重无法修复。
解析数据库文件中的数据库记录,北亚数据恢复工程师编写相应的程序提取数据库文件中的数据库记录,分析数据库备份获取数据库中的表结构,重构表结构并把提取出的数据库记录导入到新的表中。
数据验证:
由管理员对提取出的数据库记录进行验证,确认所有数据完全恢复。顺便提醒一下大家,在数据库的使用过程中,要合理分配数据库文件所在磁盘的空间,及时清理垃圾数据,保证数据库的正常、安全运行。
边栏推荐
- Process data and change the name of data
- go 学习01
- Common modules of ros2 launch files
- GBase 8c 通用文件访问函数
- Hcip day 12 notes
- The storage cost is reduced by 80%. How does the cost management of youzan data middle office do?
- Dpdk plug-in of VPP
- Leetcode high frequency question 128. the longest continuous sequence, which is often tested in interviews with Internet companies
- ros2 launch文件常用模块
- Redis design specification
猜你喜欢

HyperMesh circular array - plug in

Starfish Os X MetaBell战略合作,元宇宙商业生态更进一步

Linux Installation mysql8.0.29 detailed tutorial

以“数字化渠道”撬动家用电器消费蓝海,经销商在线系统让企业生意更进一步

Establishment of elk log analysis system

Traversal and properties of binary trees

物企大变局时代,SRM供应商采购系统助力企业打造物业采购数字化标杆

Interviewer: are you sure redis is a single threaded process?

存储成本降低 80%,有赞数据中台成本治理怎么做的?

Five basic data structures of redis
随机推荐
GBase 8c 备份控制函数(四)
Use of recursion: 1. Convert the tiled array to a tree 2. Convert the tree to a tiled array
云原生爱好者周刊:Prometheus 架构演进之路
网易云仿写
Gbase 8C snapshot synchronization function
Mark's story
测试/开发程序员的级别“陷阱“,级别不是衡量单维度的能力......
C# 使用Abp仓储访问数据库时报错记录集
Open source flight control (Px4, ardupilot)
软件测试面试题:请详细介绍一下各种测试类型的含义?
Flink's real-time data analysis practice in iFLYTEK AI marketing business
简单为美-编程思路
Software testing interview question: why should we carry out testing in a team?
数据输出-绘制动图
mongodb/mongoTemplate.upsert批量插入更新数据的实现
对话Atlassian认证专家叶燕秀:Atlassian产品进入后Server时代,中国用户应当何去何从?
HCIP第十二天笔记
Gbase 8C transaction ID and snapshot (III)
Fluorite network, difficult to be a "lone brave"
软件测试面试题:为什要在一个团队中开展测试工作?