Search

Showing posts with label 8944. Show all posts
Showing posts with label 8944. Show all posts

Thursday, March 3, 2011

How to Solve Error 8944 in MS SQL Server Database to recovery Corrupt MDF File?

Database corruption in SQL databases can amount to huge losses depending upon the size of your organization. Because of database corruption, you would not be able to access the databases, work on them, and most importantly all the stored records would become vulnerable. But there are certain in-house workarounds that would enable you to perform mdf recovery. However, if these methods do not work then you should use a third-party SQL database recovery software to repair the damaged database.

Consider a situation in which you are facing the following error message while working on an MS SQL Server 2000 database:

Table error: Object ID O_ID, index ID I_ID, page P_ID, row S_ID. Test (TEST) failed. Values are VAL1 and VAL2.”

Cause:

The most prominent reason for this table error is that the a record has failed while auditing as corruption is detected in its record header.

Resolution:

To overcome this problem, there are following methods that you should try, preferably in the given order, to recover MDF file:

  • Addressing hardware-related errors: You should check and address the hardware-related issues that may have caused the database header corruption. For this purpose, you can perform the following measures:

    • Check the Application log and Error log in SQL Server to ascertain whether the error has occurred because of hardware corruption.

    • Fix the errors that appear after running hardware diagnostics.

    • Swap the hardware components to isolate the actual reason of database corruption.

    • Reinstall operating system after formatting the hard disks.

  • Restoring database using backup: You should check the status of the database backup. If it is clean and updated, then restore the database using the backup.

  • Running DBCC CHECKDB: You should run DBCC CHECKDB with the suggested repair clause to repair the damaged database.

If you still face the same error message even after performing these steps, that means the database is severely damaged. To perform MDF file recovery in such cases, you should use a third-party master database recovery software. These read-only tools are very safe to use that do not overwrite the repairs on the original database.

Monday, December 13, 2010

DBCC CHECKTABLE Displays 8966 and 8944 Error Messages

Records stored in a MS SQL Server table become inaccessible when it gets corrupted due to record header corruption, metadata structure damage, application malfunction, and concurrent modification. To surmount table corruption, MS SQL Server provides an inbuilt table repair command known as 'DBCC CHECKTABLE'. The command checks the logical and physical integrity of the corrupted table and the indexed view. While in most cases, the command is successful in repairing corrupted tables, there are a few instances where the command falls short in repairing the MS SQL Server table. In such situations, the command displays an error message, exhibiting the exact reason for its failure. The table remains corrupt after DBCC CHECKTABLE failure message. To overcome such table corruption, an ideal option is to restore the table from an updated backup. However, in the absence of or in case of deficient table backup, the user needs to use a powerful third-party MDF Repair utility.

To explain the above scenario in detail, consider a practical case where you encounter the below error message while attempting to repair your corrupt table using DBCC CHECKTABLE command:

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.”

The error message appears when the repair command is unable to repair the database table.

Cause:

Severe corruption in table due to record header damage.

Resolution:

To repair your table when DBCC CHECKDB fails, you will need to opt for a commercial MDF File Repairapplication. Such MDF Recovery tools use advanced repair solutions to repair the table and restore it at user-specified location.