- 论坛徽章:
- 0
|
本帖最后由 其实我有点晕 于 2013-12-06 21:20 编辑
因为盘柜硬盘坏了,更换后硬盘后,用户库恢复失败,做rebuild_log后正常,但sysprocedures和syscomments做dbcc报错,按照How to Fix a Corrupted Index on System Tables修复不成功。
一、对sysprocedures表做dbcc,tablealloc正常,checktable报错
1> dbcc checktable(sysprocedures)
2> go
Checking sysprocedures: Logical pagesize is 8192 bytes
Msg 2507, Level 16, State 1:
Server 'TVM_DS', Line 1:
Table Corrupt: Offset table is incorrect (page#=5507 row#=8 offset in offset
table is=62 correct offset is=18)
Msg 614, Level 16, State 7:
Server 'TVM_DS', Line 1:
Adaptive Server accessed a row that has an illegal length of 18458 while in data
base 'tvmdb'.
Invalid pointer param number 4, pointer value 0x(nil)
. The
minimum row length is 16. The page size is 8192.
DBCC execution completed. If DBCC printed error messages, contact a user with
System Administrator (SA) role.
select * from sysprocedures报错
// 省略前边的 //
2 884195169 50 1152 1 12500
2 887671179 0 1152 1 -939191599
CT-LIBRARY error:
ct_fetch(): protocol specific layer: external error: There is a tds protocol error. An illegal token was received.
二、对syscomments表做dbcc,tablealloc正常,checktable报错
1> dbcc checktable(syscomments)
2> go
Checking syscomments: Logical pagesize is 8192 bytes
Msg 2507, Level 16, State 2:
Server 'TVM_DS', Line 1:
Table Corrupt: Offset table is incorrect (page#=3066 row#=22 offset in offset
table is=17 correct offset is=35)
The total number of data pages in this table is 96.
Table has 2874 data rows.
DBCC execution completed. If DBCC printed error messages, contact a user with
System Administrator (SA) role.
select * from syscomments正常。
在数据库日志里,也没有见到这两个表的报错信息。
请问,还有其它解决方法吗?谢谢。
|
|