Monday, December 20, 2010

Resolve “Server: Msg 8966” & “Server: Msg 8944” Errors

DBCC DBREINDEX is a command used by DBAs to drop a previous index and then re-create a new index. The offline operation helps the DBAs to reorder indexes and recreate new disk space by compacting all the pages. While DBCC DBREINDEX command provides more optimization than executing separate DROP INDEX and CREATE INDEX commands, it is advisable not to use this command very frequently. A tightly packed database index is always a better option because there might be instances when after recreating indexes, the database table becomes corrupt and unmountable. In such situations, it becomes almost impossible to access the records saved in the database.

Furthermore, when a DBA tries to repair the table by using DBCC CHECKTABLE command, s/he might encounter the below error message:

“Server: Msg 8966, Level 16, State 1, Line 1
Could not read and latch page (1:24) with latch type SH. sysindexes
failed.
Server: Msg 8944, Level 16, State 1, Line 1
Table error: Object ID 2, index ID 0, page (1:24), row 11. Test
(!(hdr->r_tagA & (VERSION_MASK | RECTAG_RESV_A | RECTAG_RESV_B)))
failed. Values are 95 and 193.
Server: Msg 8944, Level 16, State 1, Line 1
Table error: Object ID 2, index ID 0, page (1:24), row 11. Test
(GetRecType (pRec) >= 0 && GetRecType (pRec) <= LAST_REC_TYPE) failed.
Values are 14 and 12.
CHECKTABLE found 0 allocation errors and 2 consistency errors in table
'sysindexes' (object ID 2).
DBCC execution completed. If DBCC printed error messages, contact your
system administrator.”

Repairing Database Table:

To surmount the above error message and access the database table records, a DBA needs to delete the database table and restore the table from an up-to-date database backup. The option of restoring the table might fall short under below circumstances:
  • DBA has not maintained full backup of the database table.
  • The backup of database table is unavailable or incomplete.
In case the above problem persists due to any of the two reasons, then the DBA can opt for an third-party SQL recovery application that can repair the table and restore it at user-specified location.

Data Recovery Info:

A commercial SQL recovery tool repairs corrupted SQL database tables and brings them back in usuable state. Such recovery software also provide a preview of all the recoverable records saved in the table. The table can be restored at default or new location.

Applied For:

SQL Server 2005

No comments:

Post a Comment