SqlServer数据库质疑问题
异常断电关机等特殊情况所导致数据库损坏,出现数据库质疑的问题,使用如下办法进行解决:
use master go sp_configure 'allow updates', 1 reconfigure with override go alter DATABASE 质疑数据库名 SET EMERGENCY go -- 用于检测数据库损坏程度 DBCC CHECKDB('质疑数据库名') go -- 2000 --sp_dboption 质疑数据库名, 'single user', 'true' -- 2005之后 ALTER DATABASE 质疑数据库名 SET SINGLE_USER; go -- 快速修复 DBCC CHECKDB('质疑数据库名',REPAIR_FAST) -- 重建索引并修复 DBCC CHECKDB('质疑数据库名',REPAIR_REBUILD) -- 检查并修复数据库(允许丢失数据) DBCC CHECKDB('质疑数据库名',REPAIR_ALLOW_DATA_LOSS) with NO_INFOMSGS go -- 检查并修复表 DBCC CHECKTABLE ('质疑数据库名.架构名.表名',REPAIR_ALLOW_DATA_LOSS); go ALTER DATABASE 质疑数据库名 SET ONLINE go sp_configure 'allow updates', 0 reconfigure with override go -- 2000 --sp_dboption 质疑数据库名, 'single user', 'false' -- 2005之后 ALTER DATABASE 质疑数据库名 SET MULTI_USER; go