注:請將 hbposv7替換成相應軟件的數據庫名。 此處以商業之星V7為例說明: 1.停止SQL Server的服務,備份SQL Server安裝目錄下的\data子目錄一個hbposv7_log.ldf(也有可能非此命名), 同時查看磁盤 2.啟動SQL Server服務(如已停止),創建一個新的數據庫,命名為空間是否有足夠的空間; 原來數據庫的名字。 3.停止SQL Server 4.把老數據庫的MDF文件(hbposv7_data.mdf)替換 新數據庫的相應的MDF文件, 并把LDF文件(hbposv7_log.ldg)刪除。 5.重新啟動SQL Server服務,然后運行如下命令: Use Master go sp_configure 'allow updates', 1 reconfigure with override go begin tran update sysdatabases set status = 32768 where name = 'hbposv7' --Verify one row is updated before committing commit tran go 6.停止SQL然后重新啟動SQL Server服務,然后運行如下命令 (更換日志文件路徑地址): use master go DBCC TRACEON(3604) DBCC REBUILD_LOG ('hbposv7', 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\hbposv7_log.ldf') --在這里,請輸入你的數據庫的路徑 Go 7.停止SQL然后重新啟動SQL Server服務,然后運行: use master go update sysdatabases set status = 8 where name = 'hbposv7' go sp_configure 'allow updates', 0 reconfigure with override go 8.運行dbcc checkdb(db_name) 檢查數據庫的完整性 9.修復數庫 --請在查詢分析器中執行下列語句.執行前斷開其它 所有數據庫連接,最好是斷開網線 --如果不是該數據庫名,請將數據庫 --hbposv7 --改為要修復的數據庫 USE master Go --單用戶模式 EXEC sp_dboption 'hbposv7', 'single user', 'TRUE' go --數據庫檢查 DBCC CHECKDB ('hbposv7') Go --如果返回結果出現了紅色的提示文字,說明數據庫中存在錯誤,需要修復 --數據庫修復 DBCC CHECKDB ('hbposv7','repair_rebuild') Go --再次數據庫檢查,如果返回結果中沒有了紅色的提示文字, 說明修復成功; DBCC CHECKDB ('hbposv7') Go --否則意味著還需要更高級別的修復;嘗試將上面修復語句的 'repair_rebuild'換為'repair_allow_data_loss'再試, 之后再次檢查數據庫。 --如果還有錯誤未修復,請把這些信息以文字的方式發給我們 --退出前請一定要執行以下語句返回到多用戶模式 EXEC sp_dboption 'hbposv7', 'single user','FALSE' |