Wednesday, September 2, 2009

Troubleshooting SQL Server Error 2579

SQL Server database pages are 8 KB in size, each designated with a specific ID. The application uses extents as the basic unit to allocate space for tables and indexes. If these structures suffer any sort of corruption related concerns, you can run DBCC CHECKDB command to detect it. You can deduce the exact cause of the problem from SQL Server log that records all the results of running the command. However, to restore the corrupted table, you will need to use your current backup. But at times, you find issues while restoring from backup because it doesn't exist in valid state. You need to use SQL Repair software in such problems to repair the corrupt database and its objects.

Consider an instance, you run DBCC CHECKDB command to check database consistency and come across the below error message in SQL Server error log:

“Table error: Extent P_ID object ID O_ID, index ID I_ID is beyond the range of this database.”

This entry is marked with error ID 2579 and severity level 16.

Cause

Each page ID is referenced in the form- fileId:pageInFile. In the error message above, P_ID is the ID of the affected page in the table. Error 2579 occurs if pageinfile of the extent is found to be greater than the expected physical size of the file with ID fileID specified in the database. The error indicates that the extent has been allocated in an IAM page for the indicated index ID or object.

Solution

Following are the solutions to fix the above problem:

Such errors might be frequent due to hardware related problems. So, you should diagnose the system for the same and remove or replace the faulty hardware
Restore the database table from backup
Execute DBCC CHECKDB command to determine the repair clause that should be run to repair the database table. Next, run the suggested repair clause with DBCC CHECKDB command
If applying the above measures is not feasible, you need to use third-party SQL Recovery software. SQL Repair products are commercial tools embedded with high-end scanning algorithms and graphically rich user interface to allow safe and efficient database repair.

SQL Recovery is a premier and popular tool to repair damaged SQL databases that is supportive to SQL Server 2008, 2005 and 2000. With self-descriptive and exceptionally realistic interface, advanced repair options and non-destructive design, it is a fully-featured SQL Recovery utility to repair all database objects. The software is compatible with Windows Vista, XP, 2003, 2000 and NT.

No comments:

Post a Comment