当前位置:网站首页>【数据库数据恢复】SQL Server数据库所在磁盘分区空间不足报错的数据恢复案例
【数据库数据恢复】SQL Server数据库所在磁盘分区空间不足报错的数据恢复案例
2022-07-27 12:17:00 【51CTO】
数据库数据恢复环境:
某品牌服务器存储有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)不匹配。 于是数据库数据恢复工程师尝试对数据库进行无数据库附加,附加成功。但是发现数据库系统表损坏,无法正常使用。

数据库数据恢复工程师对数据库的系统表尝试修复,但是系统表损坏严重无法修复。
解析数据库文件中的数据库记录,北亚数据恢复工程师编写相应的程序提取数据库文件中的数据库记录,分析数据库备份获取数据库中的表结构,重构表结构并把提取出的数据库记录导入到新的表中。
数据验证:
由管理员对提取出的数据库记录进行验证,确认所有数据完全恢复。顺便提醒一下大家,在数据库的使用过程中,要合理分配数据库文件所在磁盘的空间,及时清理垃圾数据,保证数据库的正常、安全运行。
边栏推荐
- Alibaba cloud RDS exception during pool initialization
- 意外收获史诗级分布式资源,从基础到进阶都干货满满,大佬就是强!
- 系统临时文件的写和读:createTempFile和tempFileContent[通俗易懂]
- Principle, concept and construction process of MySQL database master-slave replication cluster
- Can you really write binary search - variant binary search
- 解决方案:Can not issue executeUpdate() or executeLargeUpdate() for SELECTs
- Top 10 in the 5.3 billion Bi Market: fansoft, Microsoft, Yonghong, sap, Baidu, IBM, SAS, smart, salesforce, Inspur soft
- 评价自动化测试优劣的隐性指标
- MySQL paging query instance_ MySQL paging query example explanation "suggestions collection"
- torch‘ has no attribute ‘inference_ mode‘
猜你喜欢

Shell script text three swordsmen sed

Solution of digital tube flash back after proteus8 professional version cracking

Solution: the idea project does not display a tree view

I do live e-commerce in tiktok, UK

Temporary use of solo, difficult choice of Blog

Makefile template

Lonely young people can't quit jellycat

Shell脚本文本三剑客之awk

Could not load dynamic library ‘libcudnn.so.8‘;

Multi activity disaster recovery construction after station B 713 accident | takintalks share
随机推荐
Newton Raphson iterative method
B 站 713 事故后的多活容灾建设|TakinTalks 大咖分享
Binary search decision tree (average search length of binary search tree)
查看系统下各个进程打开的文件描述符数量
One article to understand the index of like in MySQL
【产品】关于微信产品分析
浪潮之巅——读书笔记+摘录+感悟
Database cli tool docker image
Guangdong's finance has taken many measures to help stabilize the "ballast stone" of food security
硬刚甲方后:中国移动 4908 万大单被废
二分查找判定树(二分查找树平均查找长度)
Sword finger offer notes: t57 - I. and two numbers of S
matlab二分法例题(用二分法求零点例题)
Sword finger offer notes: t58 - ii Rotate string left
JS-寄生组合式继承
Could not load dynamic library ‘libcudnn.so.8‘;
Multi activity disaster recovery construction after station B 713 accident | takintalks share
CLS monitoring alarm: ensure high availability of online services in real time
omitempty在go中的使用
Check the number of file descriptors opened by each process under the system