由于以外斷電,SQL Server的數(shù)據(jù)處于置疑狀態(tài),無(wú)法訪問(wèn)。
當(dāng)時(shí)處理辦法:
1)停止了Sql Server 2005數(shù)據(jù)庫(kù)服務(wù)
2)備份了數(shù)據(jù)庫(kù)文件(mdf)和日志文件(ldf)。
3)設(shè)置數(shù)據(jù)庫(kù)狀態(tài)為緊急狀態(tài)
use master
go
ALTER DATABASE enjoy_store
SET EMERGENCY
go
4)用DBCC修復(fù)了一下數(shù)據(jù)庫(kù)
DBCC CHECKDB ('enjoy_store',REPAIR_ALLOW_DATA_LOSS )
go
5)設(shè)置數(shù)據(jù)庫(kù)狀態(tài)為正常狀態(tài)
ALTER DATABASE enjoy_store
SET online
go
數(shù)據(jù)庫(kù)恢復(fù)正常。
--------------------------------------------------------------------------------------------------------
注意:
如果第4步?jīng)]有成功,可以試用下面的語(yǔ)句來(lái)重建數(shù)據(jù)庫(kù)(未實(shí)際驗(yàn)證)。
create database enjoy_store on filename='d:\data\enjoy_store.MDF' for ATTACH_REBUILD_LOG
另外一次數(shù)據(jù)庫(kù)的處理,數(shù)據(jù)庫(kù)處于正在恢復(fù)的狀態(tài);
無(wú)法進(jìn)入緊急狀態(tài),無(wú)法dbcc;
后來(lái)停止服務(wù)器,修改數(shù)據(jù)庫(kù)文件名名字(mdf文件),刪除數(shù)據(jù)庫(kù),重新附加了數(shù)據(jù)庫(kù),才搞好