Windows-Server-2003

伺服器出現故障,我可以從我的硬碟中檢索我的數據庫嗎?

  • January 4, 2013

我有一台執行 Windows Server 2003 R2 的舊伺服器。由於不正確的關閉,Windows 已損壞。我試圖修復 Windows 安裝,但它讓事情變得更糟(它進入桌面,但沒有開始菜單,並且大部分開始菜單項都失去了)。我無法執行任何程序,並且 Windows 聲稱必須重新安裝這些應用程序。

無論如何,這台伺服器很舊,我們有一台更新的伺服器,它承擔了這台伺服器 90% 以上的職責,除了託管一個數據庫。數據庫的備份用於在新伺服器上啟動它,但它大約有一天的歷史。不幸的是,所有庫存數據都是在上次備份和伺服器發生故障之間輸入的,這是需要重新輸入的大量資訊。

有沒有辦法直接從硬碟檢索數據庫資訊(通過將其插入另一台電腦進行讀取)?該數據庫由 MS SQL Server 2008 管理。我在機器本身上使用了第三方 SQL 備份工具和 MS SQL Server Management,它不會載入應用程序(抱怨缺少核心 Windows 和 .Net 文件)。重新執行 Windows 設置沒有用,導致相同的 gimped 桌面。

我會嘗試將該硬碟驅動器上的數據庫文件複製到另一台執行 MS SQL 2008 的電腦上,然後查看該文件是否可訪問。聽起來有些 Windows 文件已損壞,但這並不意味著您的數據庫文件已損壞。此資訊可能會有​​所幫助:

https://stackoverflow.com/questions/6584938/move-sql-server-2008-database-files-to-a-new-folder-location

如果您可以完整地從舊硬碟驅動器上獲取舊數據庫的 .MDF 和 .LDF 文件,您應該能夠將它們作為新數據庫附加到新伺服器上。參考這裡:

http://msdn.microsoft.com/en-us/library/ms187858.aspx

假設您的數據庫名為“MyDatabase”,文件為“MyDatabase_Data.mdf”和“MyDatabase_Log.ldf”

將它們複製到新伺服器上的文件夾中,例如“c:\MySQLServer”,然後將它們附加為新數據庫:

USE master;
GO
CREATE DATABASE MyDatabase 
   ON (FILENAME = 'C:\MySQLServer\MyDatabase_Data.mdf'),
   (FILENAME = 'C:\MySQLServer\MyDatabase_Log.ldf')
   FOR ATTACH;
GO

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