是否可以透過複製 MSSQL 伺服器的目錄/資料檔案來恢復它?我的硬碟損壞,並且能夠挽救 C:\Program Files (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE 目錄。我將其複製到新安裝並嘗試啟動該服務,但失敗了。是否有可能以某種方式恢復資料庫?
我使用的是 Windows 7 64 位元和 MS SQL Server 2008 R2。
答案1
要從檔案還原資料庫,您需要資料檔案 - MDF,有時還存在 NDF,以及日誌檔案 - LDF。
- 啟動 SQL Server Management Studio
- 右鍵單擊資料庫節點
- 選擇附
- 點選添加
- 選擇您已儲存的MDF文件
- LDF 檔案應該會自動新增。如果沒有,將顯示「未找到」訊息,您必須透過點擊省略號按鈕手動新增文件
如果失敗,請嘗試僅附加 MDF 文件,使用sp_attach_single_file_db功能
EXEC sp_attach_single_file_db @dbname = 'AdventureWorks2012Restored' ,
@physname = N'D:\ApexSQL\backups\CS2.mdf';
如果失敗,MDF 檔案可能已損壞。您可以嘗試使用第三方工具來讀取 MDF 檔案並恢復數據
ApexSQL 復原是一個可以讀取損壞的 MDF 檔案、重新建立所有物件並恢復表格記錄的工具。它可以建立T-SQL腳本或建立資料庫的副本
免責聲明:我在 ApexSQL 擔任支援工程師
答案2
您不應該複製整個目錄。您應該只複製相關資料庫的資料庫和事務日誌檔案。
在目標主機上解除安裝並重新安裝 SQL Server。
將相關資料庫的資料庫和交易日誌檔案複製到目標主機。
附上資料庫。
答案3
正如@joeqwerty所說,只是對未來的一些建議。
最好將資料庫檔案 .MDF 與日誌檔案 .LDF 保存在不同的磁碟機上。也建議將所有資料庫遠離 C: 磁碟機。 TEMPDB 在單獨位於驅動器上時性能最佳。
這是一篇如何移動系統資料庫的文章科技網