Read time 6 minutes

Summary : Error Msg 605 in SQL Server denotes MDF file corruption, hindering data access. Severity level 21 necessitates precise solutions like DBCC PAGE, restoring from backup, or using DBCC CHECKDB with proper repair clauses. In complex cases, specialized tools such as Kernel for SQL Recovery ensure efficient MDF file recovery, preserving data integrity, enabling preview, and facilitating multiple file repairs in one go.

SQL Server has the capability to house multiple databases, and when users utilize SQL Server Management Studio to access a database, they gain access to all the information for usage and modification. However, on occasion, the application may encounter an error while attempting to open the database, preventing users from accessing its contents.

“Msg 605, Level 21, State 3, Line 1 – Attempt to fetch logical page (1:224) in database 11 failed. It belongs to allocation unit 72058253744865280, not to 72057594040287232.”

or

Have you encountered this error message before? Certainly, this error is a common experience for users attempting to access damaged MDF files that have become inaccessible within the SQL database. However, the precise reason behind its occurrence remains unknown to most users.

Reason of Occurrence of Error

Error Msg 605 arises when a non-system administrator attempts to log in. This error is displayed in red color and typically results in session termination if the severity level is 21. The error is recorded in both the SQL error log and the Windows Application Event Log, labeled as Event ID 605.

The severity level is set to 12 only when it’s returned from the client application. Specifically, the error can reach a severity level of 12 if the query fails in a scenario where it’s utilizing the read uncommitted isolation level.

Irrespective of the technical know-how about the Error Msg 605, a user always looks to get a prominent solution to the problem.

Resolution for Error Msg 605

Typically, as a user, you can address the issue when the severity level is 21 with the assistance of a backup. To begin, you need to collect accurate information about the data file and page number provided in the error message. Then, utilize the DBCC PAGE command to proceed.

dbcc traceon(3604)
dbcc page(‘MyDatabaseName’,1, 224,3)
dbcc traceoff(3604)

NOTE: You could very well make use of option 0,1,2,3 as the last parameter (bold 3) of DBCC PAGE command. You have two different options to choose from:

  1. Restore that page from a complete Database backup
  2. Try DBCC commands

Although, experts recommend to opt for the1st option, but just in case you don’t have last full backup, the you could easily opt for a second way. Given below TSQL, will help in restore the page from the last complete database backup

RESTORE DATABASE MyDatabaseName
PAGE = ‘1:224’
FROM DISK = ‘D:\MyDatabaseName.bak’
WITH NORECOVERY

But talking about the situation when you don’t have the complete backup of your database, then the best option you need to work on is usage of a DBCC CHECKDB command. In case of no backup, first you require to verify about the severity level.

DBCC CHECKDB (‘MyDatabaseName’) WITH NO_INFOMSGS

After executing the above command, it may recommend REPAIR_REBUILD, but also need to note that if you see repair level REPAIR_ALLOW_DATA_LOSS, unfortunately you may require losing some of your data. Use the below given command based on the Repair Level.

  1. ALTER DATABASE MyDatabaseName SET SINGLE_USER
    GO
    DBCC CHECKDB(‘MyDatabaseName’, REPAIR_REBUILD)
    GO
    ALTER database MyDatabaseName SET MULTI_USER
    GO
  2. ALTER DATABASE MyDatabaseName SET SINGLE_USER
    GO
    DBCC CHECKDB(‘MyDatabaseName’, REPAIR_ALLOW_DATA_LOSS)
    GO
    ALTER database MyDatabaseName SET MULTI_USER

But, the resolution to Error Msg 605 may slightly differ in case of severity level 12. When severity level 2 is encountered, user is expected to follow these steps:

  1. Just ignore uncommitted isolation level (or NOLOCK hint).
  2. Do not make any changes while running the SQL query.
  3. Do not make unnecessary interruptions.

Following these steps might provide some relief from Error Msg 605. However, users should not anticipate top-quality results from such a tool, as there’s a possibility that the SQL server edition may not support the retrieval process effectively.

Various SQL servers incorporate numerous linked databases, including MS SQL Server 2019/2017/2016/2014/2012/2008 R2/2008/2005/2000, capable of storing MDF files. If the traditional method fails to retrieve data for SQL Server 2014, accessing and securing the data becomes challenging. Hence, it’s essential to seek assistance from a tool that can guarantee the recovery of MDF files.

Making Dedicated SQL Recovery

Specialized recovery of damaged MDF file pages involves restoring file components such as Triggers, Rules, Functions, Tables, and Stored Procedures, among others. While many software solutions promise comprehensive recovery, only a handful of them truly deliver on this promise. If you want to preview the restored file components, it’s advisable to install the software.

This software’s significance goes beyond merely recovering MDF files from a corrupted state; it also enables users to preview the recovered components and offers various distinct saving modes, setting it apart in performance. The tool efficiently restores Triggers, Rules, Functions, Tables, Stored Procedures, and more, creating backup files in a script format. Throughout the process, data integrity is preserved. Additionally, the tool allows users to repair multiple MDF files in a single operation.

It is really different – Take a Trial

Beyond a basic overview of the tool’s performance, its features can paint a detailed picture. Noteworthy aspects of the software include its ability to maintain data integrity and file structure. The tool is proficient in repairing multiple MDF files in a single batch cycle. To assess its exact performance, you can download the trial version of Kernel for SQL Recovery enabling you to experience its capabilities, albeit with the limitation of not saving the recovered results.

Kernel for SQL Database Recovery