首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 2000 錯誤 9003 修復指南(僅適用 SQL 2000)

     編輯:關於SqlServer

錯誤描述

無法打開新數據庫 'POS'。CREATE DATABASE 中止。 (Microsoft SQL Server,錯誤: 9003)

此錯誤表示交易日誌檔案損壞,但資料檔案可能完好。以下提供 SQL Server 2000 專用修復流程。

修復步驟總覽

  1. 建立同名空白資料庫
  2. 停止 SQL Server 服務
  3. 替換 MDF、刪除 LDF
  4. 啟動服務 → 資料庫進入「置疑」狀態
  5. 啟用系統表直接修改
  6. 設定緊急修復模式
  7. 執行 DBCC REBUILD_LOG 重建日誌
  8. 驗證一致性
  9. 恢復正常模式
  10. 關閉系統表修改權限

關鍵 T-SQL 指令

啟用系統表修改

USE master;
EXEC sp_configure 'allow updates', 1;
RECONFIGURE WITH OVERRIDE;

設定緊急模式

UPDATE sysdatabases SET status = -32768 WHERE dbid = DB_ID('POS');

重建日誌

DBCC REBUILD_LOG('POS', 'D:\Program Files\Microsoft SQL Server\MSSQL\Data\POS_Log.ldf');

驗證與恢復

DBCC CHECKDB('POS');
EXEC sp_dboption 'POS', 'dbo use only', 'false';
EXEC sp_configure 'allow updates', 0;
RECONFIGURE WITH OVERRIDE;

常見阻礙與解決

錯誤 5030:無法排他鎖定 → 關閉 Enterprise Manager、Query Analyzer 所有連線後重試。

風險提示

  • 重建日誌會導致未提交交易遺失,資料一致性無法保證
  • 必須事後執行 DBCC CHECKDB 並人工驗證業務資料
  • 修復屬於災難恢復手段,平時務必建立完整備份策略

現代版本替代方案

SQL Server 2005+ 建議使用:

  • CREATE DATABASE ... FOR ATTACH_REBUILD_LOG
  • 從最近完整備份 + 交易日誌備份還原

結語

錯誤 9003 在 SQL 2000 可透過上述流程嘗試修復,但風險較高。建議將此作為最後手段,平時落實備份與監控才是根本之道。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved