在虚拟机中运行数据库不小心强制关机了,结果有一个重要的数据库后面加上了一个suspect的关键字,在管理器中打不开,程序也不能运行。
网上有很多分析的方法,试了一些不管用,最后用这种方法解决了,记录一下。
执行下面的代码,其中DbTest就是出问题的数据库。
EXEC sp_resetstatus 'DbTest';
ALTER DATABASE DbTest SET EMERGENCY
DBCC checkdb('DbTest')
ALTER DATABASE DbTest SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ('DbTest', REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE DbTest SET MULTI_USER