Sql-Server-2008-R2

MS SQL 2008 R2 災難恢復

  • July 1, 2020

我需要恢復 MS SQL 2008 R2 伺服器。原來的伺服器被徹底摧毀,沒有什麼可挽救的。然而,所有數據都有備份,加上系統數據庫、master、msdb、model;.bak 文件。

我設置了一台新機器,完全相同的sql版本,2008R2 SP2,並嘗試先恢復主數據庫。還原成功,但使用恢復的主伺服器無法啟動 sql 服務。似乎舊伺服器上的每條路徑都是自定義的、數據 DB、系統 DB,甚至是 sql 執行檔。

有沒有辦法找出舊伺服器上使用的路徑,即使是 sql 執行檔?

我想我必須再次解除安裝安裝 sql server,設置所有自定義路徑,以防我們找到自定義可執行路徑,這是正確的嗎?

另外,為了將來參考,在 MS SQL 伺服器上,有沒有辦法導出所有這些路徑?

我按照這個過程來找出被破壞的伺服器上使用的路徑:

本地管理員找到了已損壞伺服器的舊系統狀態備份。所以我使用這個備份來提取系統資料庫並找到 MS SQL 執行檔和實例路徑。 HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup

HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL10.MyInstance

在另一台實驗室 SQL 伺服器上,我創建了一個新數據庫,然後導入了已損壞伺服器的 masterdb 備份。

在導入的舊主數據庫上使用此查詢,舊 sql server 的數據路徑位於:

SELECT name, physical_name FROM destroyed_master

(更改了在實時 sql 伺服器上輸出數據路徑的查詢)

SELECT name, physical_name AS current_file_location FROM sys.master_files

恢復路徑後,我對 Windows 和 SQL 進行了全新的全新安裝,在安裝時使用恢復的路徑,然後成功恢復 master。SQL 服務啟動並執行,隨後數據恢復,伺服器又回來了。

考慮不恢復系統數據庫。只需恢復包含文件的數據,並希望有人足夠聰明,將它們包含在內(因此它們包含使用者)。

引用自:https://serverfault.com/questions/1021684