Topic: 求救:I/O error (bad page ID) detected during read at offset 0x00000000154000

ERP俱乐部

第 1 页 总共 1 页 [共有 4 条记录]


Posted by 吴博 on 2008-11-25 10:36 上午
在Sqlserver 2000里查看属性提示错误0,错误823,分析器写语句执行提示:断开连接;客户端连接或查看日志中提示:
I/O error (bad page ID) detected during read at offset 0x00000000154000 in file 'D:\DB\GUANGBO.mdf'.
尝试使用通常的办法恢复,即建立一个新数据库,然后用这个数据文件覆盖新数据库的数据文件,不成功.
进行修复操作如下:
USE   MASTER  
  GO  
  ALTER   DATABASE   guangbo   SET   SINGLE_USER    --------进入单用户模式
dbcc checkdb(guangbo,repair_rebuild)                ---------重新建立修复

错误提示:
服务器: 消息 8966,级别 16,状态 1,行 1
未能读取并闩锁页 (1:170)(用闩锁类型 SH)。sysindexes 失败。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
目前的状况是,在管理器中没有办法进入数据库的表,一直是读写状态;在查询分析器里面写语句执行就提示:
服务器: 消息 823,级别 24,状态 2,行 1
连接中断
因此也不能查看数据库的属性,右键-属性就报错:
错误0:此服务器已经断开连接.必须重新连接以执行此操作.
点击OK,有报错:
错误 823:
点击OK,有出来错误提示 :
未能获取数据库'guangbo'的属性信息.
点击OK,guangbo的数据库属性一闪而过

通过追踪,应该是sysindexes有问题,修复此表操作:
目前找到sysindexes表有错误,修复提示:
服务器: 消息 8966,级别 16,状态 1,行 1
未能读取并闩锁页 (1:170)(用闩锁类型 SH)。sysindexes 失败。
服务器: 消息 8909,级别 16,状态 1,行 1
表错误: 对象 ID 7471209,索引 ID 32,页 ID (1:170)。页首结构中的 PageId = (114:7274612)。
        DBCC 语句的修复级别导致回避了此修复。
CHECKTABLE 发现了 0 个分配错误和 1 个一致性错误(在表 '(Object ID 7471209)' 中,该表的对象 ID 为 7471209)。
repair_allow_data_loss 是最低的修复级别(对于由 DBCC CHECKTABLE (guangbo.dbo.sysindexes repair_rebuild) 发现的错误而言)。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
再次DBCC CHECKTABLE('SYSINDEXES',REPAIR_ALLOW_DATA_LOSS)

提示:
服务器: 消息 8966,级别 16,状态 1,行 1
未能读取并闩锁页 (1:170)(用闩锁类型 SH)。sysindexes 失败。
服务器: 消息 8909,级别 16,状态 1,行 1
表错误: 对象 ID 7471209,索引 ID 32,页 ID (1:170)。页首结构中的 PageId = (114:7274612)。
        该错误已修复。
CHECKTABLE 发现了 0 个分配错误和 1 个一致性错误(在表 '(Object ID 7471209)' 中,该表的对象 ID 为 7471209)。
CHECKTABLE 修复了 0 个分配错误和 1 个一致性错误(在表 '(Object ID 7471209)' 中,该表的对象 ID 为 7471209)。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系.
提示修复成功,但是还是没有.请大家帮忙.谢谢

Posted by 吴博 on 2008-11-28 10:39 上午
请版主帮忙关注,谢谢!!

Posted by 半神 on 2008-12-18 11:32 上午
从新装一遍吧

Posted by 半神 on 2008-12-18 11:36 上午
微软的东西就是这样!建议你装SQL2005吧