Dell PowerEdge T110 II 塔式服务器 |
Windows Server 2012 R2 | Hyper-v VM 管理器 | Windows 7 Pro(客户操作系统)
Hyper-V 客户操作系统(win7 pro)作为存储客户数据的数据库服务器(MySQL)。发生断电事件,连接塔式服务器与外界的网络交换机当时(由于某些原因)未连接到电源备份系统,因此与 DELL 服务器以外的其他设备一起关闭。
此事发生时我并不在“现场”,因此当地人员(无权登录访问 DELL 服务器塔式主机操作系统)认为这只是一个简单的电源循环问题,便打开了网络交换机,但在被一线出纳员告知塔式服务器主机操作系统内的 SQL 数据库服务器(安装在客户操作系统上)仍然无法访问后,便按下了服务器的电源按钮启动软关机(再次认为这只是一个简单的电源循环)。
数据库仍然无法访问,我接到电话后立即发现 - 客户操作系统处于“已保存”状态,带有一些父级和子级快照(检查点)。尝试将其打开时,出现了一个又一个错误,甚至无法看到客户操作系统的启动屏幕。我选择了“删除已保存状态”选项并启动,但无济于事。因此,我继续使用有问题的虚拟机正在使用的相同 VHD 文件创建一个新的虚拟机。创建成功,登录到 Gust OS,检查所有已安装的程序,尤其是 SQL 数据库和其他支持应用程序。即使从一线出纳员的工作站来看,一切看起来都很好。问题已解决,所以我想就此打住。
然后最可怕的事情发生了——四个月前的所有每日数据输入都消失了!现在出纳员们都在催我。我别无选择,只能重启可怜的旧虚拟机。幸运的是,我成功了。这是怎么发生的?数据不是应该存储在实际的客户操作系统中,而不是与其关联的快照中吗?
答案1
嗯... 不。原始 VHD(X) 处于只读状态,所有新写入都写入快照磁盘。通过使用原始 VHD(X) 让 VM 再次运行,您实际上将数据恢复到拍摄第一个快照之前的状态。您可能应该加深对快照的了解。
此外,您为什么要为生产虚拟机创建快照,为什么要在快照上运行这么长时间?这有悖于最佳实践。快照旨在用于在测试更新、安装或对虚拟机的其他更改时回滚到已知的良好时间点。
我希望您不要认为快照就是备份,因为它们不是。我还希望您定期备份虚拟机和/或数据……但听起来您可能没有这样做。