a possible database consistency problem has been detected on database

一. 在数据库   'WSEDSQLDB '   中检测到一个可能的数据库一致性问题。应该对数据库   'WSEDSQLDB '   运行   DBCC   CHECKDB   和   DBCC   CHECKCATALOG

解决方法:

企业管理器——数据库列表——选择需要修复的数据库——属性——"选项"选项卡——限制访问——选择单用户。然后关闭企业管理器,打开查询分析器,运行:   
  DBCC   CHECKDB   ('数据库名',REPAIR_REBUILD)
或者
DBCC   CHECKDB   ('数据库名',REPAIR_ALLOW_DATA_LOSS)
在着经常出现这个问题后,不能访问数据,报索引错误

USE zj123_b2b; 
GO
DBCC DBREINDEX ("product", " ", 70);
GO
用这个重新建索引就可以了

 

二. 检查数据库中,突然出现

text,ntext或image节点的页(1:835),槽4不存在
修复错误的路很长,先备份了数据库,然后开始征途

1.
运行
dbcc checkdb('85game_db') 
出结果。

CHECKDB 发现了 0 个分配错误和 5 个一致性错误(在表 'DP_SoftList' 中,该表的对象 ID 为 213575799)。

表明 表 'DP_SoftList' 中 有错误

2.
以repair_allow_data_loss级别修复表 
dbcc   checktable('DP_SoftList',repair_allow_data_loss)   
go 
出结果
提示 未处理修复语句。数据库需要处于单用户模式下。
需要将数据库改为"单用户模式"
3.
于是再执行: 
alter database "85game_db" set single_user with rollback immediate
go
数据库已经变更为单用户模式
4.
已repair_allow_data_loss级别修复表 
dbcc checktable('DP_SoftList',repair_allow_data_loss)   
go
结果
'DP_SoftList' 的 DBCC 结果。
        该错误已修复。
        该错误已修复。
        该错误已修复。
        该错误已修复。
        该错误已修复。
修复: 已删除文本列,文本 ID 5593759744(属于对象 ID 213575799,位于页 (1:3939),槽 12)。
修复: 已删除文本列,文本 ID 5592711168(属于对象 ID 213575799,位于页 (1:6365),槽 9)。
对象 'DP_SoftList' 有 25371 行,这些行位于 1251 页中。
CHECKTABLE 发现了 0 个分配错误和 5 个一致性错误(在表 'DP_SoftList' 中,该表的对象 ID 为 213575799)。
CHECKTABLE 修复了 0 个分配错误和 5 个一致性错误(在表 'DP_SoftList' 中,该表的对象 ID 为 213575799)。

5.
不放心 再执行2个修复
修复索引表
DBCC   DBREINDEX('DP_SoftList') 
再修复表
DBCC   CHECKTABLE('DP_SoftList') 
完全没错误提示了

6.恢复多用户模式

alter database "85game_db" set multi_user   with rollback immediate 

posted @ 2010-08-24 15:21  novel  阅读(632)  评论(0编辑  收藏  举报