修复数据库不一致性错误的方法

Posted zamscs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修复数据库不一致性错误的方法相关的知识,希望对你有一定的参考价值。

declare @dbname sysname
要use master

alter database UFDATA_002_2017 set single_user      ---------------这个不好使,可以用 《use master》 + 《 EXEC sp_dboption ‘UFDATA_002_2017‘, ‘single user‘, ‘TRUE‘》
dbcc checkdb (‘UFDATA_002_2017‘,repair_rebuild)   ----------------修复数据库索引
dbcc checkdb (‘UFDATA_002_2017‘,repair_allow_data_loss)   -------修复数据库
alter database UFDATA_002_2017 set multi_user                    -------或者 EXEC sp_dboption ‘dbname‘, ‘single user‘,‘FALSE‘

 

 

 

----------------------------------------------------------------

2、把数据库设置为单用户模式,直接在查询分析器中执行以下语句即可:
EXEC sp_dboption ‘dbname‘, ‘single user‘, ‘TRUE‘.
3、进入查询分析器执行如下语句:
《《《 ----use dbname 》》》
dbcc checkdb(‘dbname‘,repair_allow_data_loss)-------修复数据库
dbcc checkdb (‘dbname‘,REPAIR_REBUILD)----------------修复数据库索引
4、再执行:dbcc checkdb,检测数据库,出现结果为:
CHECKDB 发现了0个分配错误和 0个一致性错误(在数据库 ‘dbname‘ 中)。
数据库已经修复完毕。
5、取消单用户模式,即直接在查询分析器中执行以下语句即可:
EXEC sp_dboption ‘dbname‘, ‘single user‘,‘FALSE‘

以上是关于修复数据库不一致性错误的方法的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server一致性错误修复案例总结

数据库修复的数据库升级错误修复

SQL Server一致性错误修复案例总结

修复SQL2000数据库置疑时出现的错误

MySQL主备库数据一致性校验及修复

请问SQl执行错误!SQl Server检测到基于一致性的逻辑I/O 错误 pageid 不正确