有人告诉我,将
sql Server数据
文件和日志
文件保存在物理上独立的磁盘上是一种好习惯,因为如果数据驱动器出现故障,它将允许您将数据恢复到故障点.
所以…让我们说mydata.mdf在驱动器D:上,而我的mydata_log.ldf在驱动器E:上,它是16:45,而驱动器D:刚刚死亡可怕.
所以 – 我昨晚有完整备份(mydata.bak).我有每小时的事务日志备份,将数据恢复到16:00 ……但这意味着我将失去45分钟的更新.
我仍然在E:驱动器上有mydata_log.ldf,它应该包含提交到驱动器失败点的每个事务.
如何重新创建数据库并从备份文件和实时事务日志中恢复数据,这样我就不会丢失任何更新?这可能吗?
要完成imtiaz的答案:
首先要做的是立即尝试备份日志尾部.即使有损坏的(可疑状态)数据库,您也可以备份日志的尾部.
例:
BACKUP LOG db_name TO DISK = ‘C:\TESTS\db_name_log.trn’ WITH INIT,NO_TRUNCATE;
恢复完全备份(NO RECOVERY选项)恢复16:00日志备份(NO RECOVERY选项)恢复尾部备份(RECOVERY选项) – >您可以将数据库还原到最后的故障点.