【服务器数据恢复】ERP/CRM系统SQL Server数据库结构损坏碎片重组数据恢复案例 - 金海境科技

简介: 服务器数据恢复,勒索病毒解密恢复,虚拟化数据恢复,数据库修复数据恢复,VMWare数据恢复,分布式数据恢复,vSAN数据恢复,存储数据恢复,数据恢复

blog3.png

一:客户信息

河北某食品集团

二:案例描述

客户向我们反馈公司运行ERP/CRM的一台DELL服务器由于突然断电,服务器中一台VPS不可用,虚拟磁盘上的数据库文件丢失。

三:解决方案

案例评估

服务器上4块硬盘搭建了一个RAID10的磁盘阵列环境,安装了Citrix XenServer的虚拟化操作系统,虚拟机采用Windows Server操作系统,有系统盘和数据盘两组,上层部署ERP/CRM系统(SQL Server数据库)。服务器意外断电导致虚拟机磁盘丢失,虚拟机不可用,SQL Server数据库和ERP/CRM程序文件丢失,需要恢复SQL Server数据库。

恢复方案

1、将出故障的DELL服务器中所有硬盘以只读方式进行备份,后续的数据恢复分析和数据恢复操作都基于备份的镜像文件进行,不会对原服务器上的数据做任何操作,保证原服务器的初始状态,避免对原始数据造成可能的二次破坏。

2、基于镜像文件对底层数据进行分析,发现故障服务器中丢失的虚拟机磁盘采用LVM结构。进入到“/etc/lvm/backup/”目录下查询看是否有损坏的虚拟磁盘信息,如果有就意味着LVM信息尚有保存;如果没有就意味着虚拟磁盘信息已经被更新,只能通过底层数据查找没有更新的LVM信息。本案例中金海境科技的工程师从底层数据中查询到了尚未更新的LVM信息。

3、找到LVM信息就意味着数据没有丢失。基于LVM信息分析和查找虚拟磁盘的分区数据,但是工程师经过分析后发现了一个非常少见的现象:虚拟磁盘损坏。经过进一步查找和分析后确认该区域的数据确实已经损坏,只能找到一些数据库碎片,可以通过数据库碎片重组的手段来恢复数据:根据数据库结构,将底层找到的数据库碎片按照本来的顺序拼接重组,然后对数据库进行修复和校检后即可恢复数据库。

4、因为数据库碎片重组的恢复方法相对比较复杂,先尝试通过数据库备份来恢复数据库。因为之前数据库做过一次备份,数据库备份文件和ERP/CRM程序文件保存在RAR压缩包中。正常情况下RAR压缩包的**个扇区记录的是文件名,所以可以根据文件名反向查找压缩包的数据起始位置,把相应的压缩包底层数据提取出来并重命名。但是在实际的恢复过程中提取出来的压缩包解压时报错。

5、尝试使用RAR修复工具(设置为“忽略错误”)继续解压数据,仍然解压失败。这种数据恢复方案行不通,只能通过数据库碎片重组的方案来恢复数据库数据。

6、在数据库层面分析数据库的起始位置,分析出数据库起始位置后根据每个数据库碎片的编号和文件号去底层扫描符合这个数据库碎片的所有数据,最后将所有扫描出来的数据重组为一个MDF文件,通过MDF校验程序检测整个MDF文件的完整性,完成后开始提取数据。

7、将服务器内的数据全部提取出来并通过初步验证,没有问题后搭建新的数据库环境,将恢复出来的数据库表添加上去进行查询,所有数据查询正常,本次数据恢复工作完成。

四:案例总结

在SQL Server数据库管理中,数据库碎片(Database Fragmentation)指的是数据在存储介质上的非连续分布,这通常发生在数据库的索引结构中。索引碎片化会导致查询性能下降,因为数据库系统需要花费更多的时间来查找数据。为了优化性能,需要定期重组(Reorganize)或重建(Rebuild)索引。

1. 理解索引碎片

在SQL Server中,有两种类型的碎片:

‌页级碎片‌:这是由于数据页在物理存储中的非连续排列引起的。可以通过重组索引来减少页级碎片。

‌键值碎片‌:这是由于索引键值分布不均匀造成的。重建索引可以显著减少键值碎片。

2. 重组索引

重组索引不会改变索引的结构,只是将现有的数据重新组织到索引结构中,以减少页级碎片。重组索引可以使用以下SQL命令:

sql

Copy Code

ALTER INDEX [IndexName] ON[TableName] REORGANIZE;

3. 重建索引

重建索引会删除现有的索引并重新创建它,这通常用于减少键值碎片并优化索引的物理存储结构。重建索引可以使用以下SQL命令:

sql

Copy Code

ALTER INDEX [IndexName] ON[TableName] REBUILD;

4. 选择何时使用重组与重建

‌使用重组‌:如果你的索引已经很大,且页级碎片较多,但不希望重建索引带来的性能开销(因为重建索引需要额外的磁盘空间和时间),你可以选择重组索引。

‌使用重建‌:如果你注意到查询性能明显下降,且键值分布不均匀,或者你希望彻底优化索引的结构,那么应该选择重建索引。重建索引通常伴随着更好的性能提升,但代价是重建过程中的性能下降和额外的磁盘空间使用。

当数据发生丢失时,金海境科技研发团队深入研究各种服务器和系统设计思路,认真对比故障类别,攻克疑难恢复案例,总结成功恢复经验,拥有成功修复服务器数据库,虚拟化平台,分布式存储等数据中心相关的上万个疑难案例。

相关文章
|
6月前
|
存储
服务器数据恢复—服务器断电导致数据丢失的数据恢复案例
某品牌服务器中有12块硬盘,组建了一组raid5磁盘阵列,服务器内存储的是普通文件。 机房供电不稳定导致服务器断电,管理员重启服务器后发现服务器无法正常工作。 根据描述的故障发生过程,北亚企安数据恢复工程师推断故障是意外断电导致raid模块损坏。
|
10月前
|
存储 弹性计算 应用服务中间件
阿里云服务器2核4G、4核8G、8核16G配置主要适用场景及最新活动价格参考
云服务器现在已成为企业和个人开展业务、搭建应用不可或缺的基础设施,在众多配置中,2核4G、4核8G和8核16G是广大用户选择较多的配置,目前阿里云服务器通用算力型u1实例2核4G5M带宽企业用户购买的价格只要199元1年,且续费价格不变,4核8G目前的活动价格为955.58元1年起,8核16G配置选择计算型c8y实例的活动价格为3815.03元1年起。本文将为大家解析2025年截止目前阿里云服务器中2核4G、4核8G、8核16G配置的活动报价,帮助用户了解最新价格信息,以及不同配置的主要适用场景,以供参考和选择。
|
6月前
|
人工智能 架构师 程序员
学历对程序员的深远影响:2025年的现实与思考-优雅草卓伊凡
学历对程序员的深远影响:2025年的现实与思考-优雅草卓伊凡
228 12
学历对程序员的深远影响:2025年的现实与思考-优雅草卓伊凡
|
6月前
|
物联网 虚拟化 Windows
Windows 10 version 22H2 中文版、英文版下载 (2025 年 9 月更新)
Windows 10 version 22H2 中文版、英文版下载 (2025 年 9 月更新)
2233 2
Windows 10 version 22H2 中文版、英文版下载 (2025 年 9 月更新)
|
8月前
|
存储 虚拟化 iOS开发
VMware ESXi 9.0 macOS Unlocker & OEM BIOS 2.7 标准版和厂商定制版
VMware ESXi 9.0 macOS Unlocker & OEM BIOS 2.7 标准版和厂商定制版
1013 1
VMware ESXi 9.0 macOS Unlocker & OEM BIOS 2.7 标准版和厂商定制版
|
9月前
|
安全 Linux 定位技术
解决CentOS中挂载/dev/mapper/centos-root到sysroot失败的问题
记住,在攀爬这座挂载的高峰时,细心和耐心是你最好的朋友。不要走捷径,不要惧怕其中的复杂性,一步一个脚印地检查每个环节,最后达到山顶的那一刻,系统平稳地响应你的每条指令,你会发现这一切努力都是值得的。
523 2
|
人工智能 并行计算 搜索推荐
ollama本地部署llama3(window系统)
这篇文章详细介绍了如何在Windows系统上本地部署Ollama框架来运行Llama 3大模型,并提供了具体的安装步骤和注意事项,以便实现离线使用高级AI模型进行对话。
1511 0
ollama本地部署llama3(window系统)
|
域名解析 存储 网络协议
Linux中搭建主从DNS服务器
搭建主从DNS架构以提升DNS服务的高可用性、负载均衡和数据冗余。主服务器配置涉及编辑`/etc/named.conf`,设置监听IP和允许查询的范围,并定义主区域及允许的数据传输。从服务器配置需指定为奴隶类型,并指明主服务器的IP。测试表明正反向查询解析均正常。注意配置文件的语法正确性和权限设置。
640 0
|
存储 运维 安全
云上金融量化策略回测方案与最佳实践
2024年11月29日,阿里云在上海举办金融量化策略回测Workshop,汇聚多位行业专家,围绕量化投资的最佳实践、数据隐私安全、量化策略回测方案等议题进行深入探讨。活动特别设计了动手实践环节,帮助参会者亲身体验阿里云产品功能,涵盖EHPC量化回测和Argo Workflows量化回测两大主题,旨在提升量化投研效率与安全性。
云上金融量化策略回测方案与最佳实践
|
12月前
|
人工智能 小程序 前端开发
【一步步开发AI运动小程序】十九、运动识别中如何解析RGBA帧图片?
本文介绍了如何将相机抽取的RGBA帧图像解析为`.jpg`或`.png`格式,适用于体测、赛事等场景。首先讲解了RGBA图像结构,其为一维数组,每四个元素表示一个像素的颜色与透明度值。接着通过`uni.createOffscreenCanvas()`创建离屏画布以减少绘制干扰,并提供代码实现,将RGBA数据逐像素绘制到画布上生成图片。最后说明了为何不直接使用拍照API及图像转换的调用频率建议,强调应先暂存帧数据,运动结束后再进行转换和上传,以优化性能。

热门文章

最新文章