SQL server error 8931 appears when the level, i.e. LEVEL1 does not abide by the level rules of the P_ID2 page; the parent page in the B-tree. The error looks similar to:
"Severity Level 16
Message Text
Table error: Object ID O_ID, index ID I_ID B-tree level mismatch, page P_ID1. Level LEVEL1 does not match level LEVEL2 from parent P_ID2."
This shows that in B-tree structure, there are two pages linked, that are
AS per level rules; if level X is assigned to the parent page; child page must hold:
The root cause for existence of this error message is the corruption in the structure of B-tree pages. The SQL error 8931 takes place when the level in the child page shows incompliance with the level rules of parent page.
Resolution 1: Check B-tree Pages: To detect the inconsistencies among the pages, examine P_ID1 and P_ID2 and check if error 8931 or any of its instances exists in B-tree.
Note: Error 8931 takes place in case of inconsistencies or mismatch among sibling level pages in B-tree.
Resolution 2: Hardware Detection: Thoroughly check all the hardware components to detect if the error message exists due to malfunctioning of any of the hardware elements. To detect this; the following measures can be adopted:
Note: It is recommended that before implementing any of the above mentioned measures, backup all the SQL database components to avoid data loss.
Resolution 3: Backup Restoration: If clean healthy backup is available, try resolving the issue by restoring backup. It is indeed a good practice to generate backup on regular basis as this will prevent loss of information in such cases. This way, only the most recent work will be lost and the database components from last generated backup can be restored in SQL Server.
Resolution 4: DBCC Execution: If the above mentioned resolution methods does not prove to be helpful, try executing Database Console Commands as they may help in resolving the issue. This helps in checking the inconsistencies; as well as running CHECKDB with recommended clause can result in repair of affected database and incorporated data.
When all the given resolutions and techniques fails to recover database as well as rectifying SQL server error 8931, the alternate commercial solution can be used to fix SQL server database from such error. Third party recovery tool eradicates error messages from SQL Server database files and makes them accessible. It also helps in removing SUSPECT mode from the SQL databases and brings them to running mode.
The corrupted MDF as well as NDF files are recovered through advance scanning of these files and deleted data is extracted and restored back to their original formats. Therefore, where manual procedures fails to fix the error and can result in loss of data, this recovery tool helps in removing error messages, corruption as well as recovering deleted SQL data components.