虚拟机数据恢复—异常断电导致ESXI虚拟机数据损坏的数据恢复案例

虚拟机数据恢复环境&故障:
一台某品牌EVA存储异常断电,存储上的一台ESXI虚拟机无法启动,该虚拟机里存放的是mysql数据库。
发现虚拟机无法启动后,管理员重启存储和服务器,重启设备后虚拟机仍然无法启动。由于数据涉密,管理员联系我们数据恢复中心要求数据恢复工程师到现场恢复数据。

虚拟机故障检测:
北亚企安数据恢复工程师到达现场后对故障存储进行检测,经过检测发现故障虚拟机中有两个快照。服务器数据恢复工程师将两个虚拟机快照合并后以磁盘格式将虚拟机的镜像文件打开进行分析,经过分析发现文件系统中部分数据被清零或者被替换,mysql数据库的索引文件也被替换破坏。

虚拟机数据恢复过程:
1、将故障存储中所有磁盘数据以只读方式做完整镜像,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、故障虚拟机中的主要数据为mysql数据库文件,只要提取出虚拟机内的mysql数据库文件即可完成虚拟机的数据恢复。由于故障存储中的mysql数据库(mysisam引擎)是通过独立表空间存储数据,各个表的数据是独立存储的,因此即使数据库的索引文件被替换破坏,但文件存在的情况下依然可以通过分析底层数据来恢复数据库文件。
3、北亚企安数据恢复工程师通过基于镜像文件对底层数据进行分析和修复,提取出数据库文件数据。
4、重建虚拟机对恢复出来的数据进行验证,发现依然有部分数据破坏,经过仔细分析发现原因是系统表空间存在异常,此部分数据确实无法修复。
5、让用户方现场验证数据,经过仔细验证后,用户方确认有<5%的虚拟机数据没有恢复出来,所幸这些无法恢复的数据不是重要数据,关键是数据库中的重要数据已经恢复出来。用户方认可数据恢复结果,本次虚拟机数据恢复工作完成。


http://www.niftyadmin.cn/n/5434432.html

相关文章

AI推介-大语言模型LLMs论文速览(arXiv方向):2024.03.05-2024.03.10—(2)

论文目录~ 1.Debiasing Large Visual Language Models2.Harnessing Multi-Role Capabilities of Large Language Models for Open-Domain Question Answering3.Towards a Psychology of Machines: Large Language Models Predict Human Memory4.Can we obtain significant succ…

利用Python网络爬虫下载一本小说

目录 一、引言 二、准备工作 三、爬虫设计 四、案例实现 发送HTTP请求获取页面内容 解析HTML页面获取章节列表 循环爬取每个章节的内容 完整代码示例 五、注意事项与优化 六、总结 一、引言 随着网络技术的不断发展,网络爬虫已经成为了一种重要的数据获取…

Linux上部署zabbix 6.x

建议大家使用Rocky Linux 8.X https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.9-x86_64-minimal.iso 1> 配置安装yum源 [rootzabbix ~]# yum install https://mirrors.huaweicloud.com/zabbix/zabbix/6.2/rhel/7/x86_64/zabbix-release-6.2-3.el8.noarc…

ROS 实时语音交互(一)ASR (流式识别)中文

目录 一、模型选择 二、流程 三、核心代码展示 背景:最近要做一个基于linux的语音交互,windows也可以跑通 一、模型选择 sherpa-ncnn 测试了四五个模型,只有这个模型比较好用,中文识别效果较好 这个模型好用./build/bin/sh…

Java-并发编程--ThreadLocal、InheritableThreadLocal

1.ThreadLocal 作用 作用:为变量在线程中都创建副本,线程可访问自己内部的副本变量。该类提供了线程局部 (thread-local) 变量,访问这个变量(通过其 get 或 set 方法)的每个线程都有自己的局部变量,它独立…

粤嵌6818开发板嵌入式开发Linux内存映射

一、内存映射 1.内存映射的概念 把文件的一个区间映射到进程的虚拟地址空间 ,获得一段虚拟地址, 实现文件磁盘地址和这一段虚拟地址的一一对映关系。(即往这段虚拟地址写入数据,就相当于往这个文件中写入数据) 2.内…

C语言经典面试题目(十二)

1、如何在C语言中实现栈和队列数据结构? 栈(Stack): 栈是一种后进先出(LIFO)的数据结构,可以使用数组或链表来实现。以下是一个使用数组实现的简单栈的示例: #define MAX_SIZE 10…

0基础 三个月掌握C语言(12)

C语言内存函数 memcpy使用和模拟实现 memcpy函数原型: 不管拷贝的元素是什么类型 它都能拷贝(针对内存块) 1.函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置 2.这个函数在遇到’\0’的时候并不会停下…