萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

SQL Server 2000 遺失 LDF 日誌檔案的資料庫恢復實戰

當僅擁有 MDF 資料檔而遺失 LDF 日誌檔時,恢復策略取決於檔案來源:同一伺服器或不同伺服器。本文詳細記錄「不同伺服器」情況下的完整恢復步驟 (含 dbcc rebuild_log)。

適用場景

從其他機器複製而來的 MDF 檔,直接 sp_attach_db 會報錯 1813。

恢復步驟 (以 test 資料庫為例)

  1. 建立同名空資料庫 test (產生 test_data.mdf, test_log.ldf)。
  2. 停止 SQL Server 服務。
  3. 刪除新建的 test_log.ldf,用待恢復的 test.mdf 覆蓋 test_data.mdf。
  4. 啟動服務,資料庫標記為「置疑」。
  5. 開啟系統表直接修改選項:
    企業管理器 → 伺服器屬性 → 「允許對系統目錄直接修改」打勾。
  6. 設定緊急修復模式:
    UPDATE sysdatabases SET status=-32768 WHERE dbid=DB_ID('test')
  7. 重建日誌檔:
    DBCC REBUILD_LOG('test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf')
  8. 驗證一致性 (可略):DBCC CHECKDB('test')
  9. 設回正常模式:SP_DBOPTION 'test','dbo use only','false'
  10. 關閉系統表直接修改選項:
    SP_CONFIGURE 'allow updates',0; RECONFIGURE WITH OVERRIDE

完成後資料庫恢復正常可讀寫。操作具風險,建議先備份 MDF 檔。

copyright © 萬盛學電腦網 all rights reserved