SQL SERVER 2005 数据库置疑修复
alter database 置疑数据库 set emergency
go
alter database 置疑数据库 set single_user with rollback immediate
go
use master
go
alter database 置疑数据库 Rebuild Log on
(name=SuspectDB_log,filename=’D:/Log/置疑数据库_log.LDF’)
go
alter database 置疑数据库 set multi_user
go
DBCC CHECKDB('置疑数据库')
go
网上的很多是针对sql 2000 不适用2005
如命令 UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'
在2005不支持
改为 alter database 置疑数据库 set emergency
用dbcc checkdb检测之后发现有一致性的错误,可以用REPAIR_ALLOW_DATA_LOSS进行再次修复。
用exec sp_msforeachtable 'select count(*) from ?'来验证数据库中的表是否真正没有错误。