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 ?'来验证数据库中的表是否真正没有错误。

posted @ 2015-06-04 22:37  qanholas  阅读(2713)  评论(1编辑  收藏  举报