1

鑑於以下(假設)情況,如何最好地備份/恢復數據庫。災難恢復 - 不使用MDF恢復SQL Server數據庫

  1. 每天在上午12點進行完整備份。
  2. 每小時做的差1點,凌晨2點等上半小時,130am,230am等
  3. 事務日誌備份
  4. 我也存儲驅動器X激活.LDF文件和驅動器Y.
  5. 的.mdf

同樣重要的主DB是Y.

比方說,假設Y驅動在245am失敗

我有充分的,差異和交易日誌,直到上午230。但我也有.ldf。在理論上,我將不得不重新安裝SQL Server。然後,我想要恢復該數據庫直到上午245點。

我聽說過在恢復操作上做尾部日誌備份,但我沒有.mdf了。所以,我需要從我的完整/差異/日誌備份創建一個新的數據庫。之後,我不知道如何繼續獲得最後15分鐘的交易。

我希望這是有道理的...

謝謝!

Steve。

+0

這個第2部分的場景,涵蓋了你的具體情況:http://www.sqlskills.com/blogs/paul/disaster-recovery-101-後盾-up-the-tail-of-the-log/ – TheGameiswar

+1

這實際上與**編程**(其中*本站*全部是關於**)沒有任何關係,但是使用DB管理 - 所以它在這裏脫離主題,屬於[dba.stackexchange.com](http://dba.stackexchange.com) - 投票移動。 –

+0

這是完美的!謝謝 - 我知道有一種方法可以做到這一點。我知道在Oracle中可能有重做日誌,這就是我爲什麼不放棄。 :-) – sjh7899

回答

1

你問,如何採取TailLog備份,當你沒有獲得MDF文件..

這隻能如果你的數據庫是不是在BulkLoggedRecovery型號或你的日誌沒有批量成交記錄..This已經深入介紹這裏:Disaster recovery 101: backing up the tail of the log

下面是步驟才能

  1. 創建具有相同名稱的虛擬數據庫
  2. 刪除該虛擬d的所有文件atabase,通過使其脫機
  3. 複製原始數據庫LDF
  4. 把這個數據庫聯機將失敗..

現在你可以使用下面的命令採取TailLog備份..

BACKUP LOG dummydb 
TO DISK = N'D:\SQLskills\DemoBackups\DBMaint_Log_Tail.bck' WITH INIT, NO_TRUNCATE; 
GO 

現在既然你有所有的備份,你可以恢復到故障時間點

+0

是的 - 確切!感謝這正是我需要的。 – sjh7899