Get Rid of Suspect SQL Server Error 926 and 945

SQL Server databases can experience a lot of issues with its integrity and if there is any inconsistency with the database in its Read or Write operation can cause a fatal error. SQL Server error 926 and 945 also belong to such error types where certain associated files are either missing or has some other issues. The case is rare but can happen while connecting the SQL Instance using SA login. What happens is when you try to connect it, an error message is thrown depicting that the ‘msdb’ cannot be opened and it is marked as suspect. Both of SQL error 926 and error 945 are caused due to different reasons. We will discuss about these errors one by one.

SQL Server Error 926

Error 926

Severity Level 14

Error Message: SQLDatabase ‘%.*ls’ cannot be opened. This database is marked as SUSPECT by recovery. Refer SQL Server errorlog for more details.

Description:

Such type of error resembles that the database has integrity issues and that is why the database is marked as SUSPECT. It might have failed the recovery process which brings the database to consistent state. SQL Server Error 926 can be displayed while performing the mentioned operations like; while starting the Microsoft SQL Server instance, or while attaching any database or while performing RESTORE or RESTORE LOG procedures.

Error Resolution:

SQL Error 926 can be rectified at user’s end and the database can be then accessed without any error. As soon as this error message is detected, one can check for Microsoft SQL Server error log and check for the root cause for SQL Server error 926 to occur. In case recovery was not possible due to other reasons like I/O error, hardware issue, or torn page, etc.

For such error one can consider the integrity check utility DBCC CHECKDB which will report the error and provide a solution for it. One can opt to restore the backup if updated backup is available. In case backup is not available or the integrity check tool is unable to resolve the problem, one can contact primary support provider or can also contact the error logs for SQL Server.

SQL Server Error 945

Error 945

Severity Level 16

Error Message:

SQL Server Database ‘%.*ls’ is not opening because of inaccessible files. This can also be caused if there is not enough disk space or memory on the system then also this error can be generated. See the error log of SQL Server for more details.

Description:

SQL server error 945 is displayed when the database is marked as IsShutdown. This error occurs when a database cannot be recovered due to missing files. The error can also be caused as some resource error was not corrected successfully.

SQL Server Error 945 Resolution:

Check if database is flagged as IsShutdown with DATABASEPROPERTY. Afterwards, you can examine the cause of error by checking the errorlog and perform below mentioned steps;

If data/log files are missing;

  • Search for the missing files, and bring the database OFFLINE.
  • Use ALTER DATABASE in order to bring it ONLINE.

If log space is not enough;

  • Utilize sp_add_log_file_recover_suspect_db() for adding new log file.

Database will be recovered and will be mounted online.

In case memory is not sufficient;

While recovering the multiple databases, this error can be displayed. One can retry the operation which might fix this issue.

  • Try the operation again with ALTER DATABASE for bringing the .db OFFLINE.
  • Then utilize ALTER DATABASE for bringing .db ONLINE.

Common Solutions

Both the SQL Server error 926 and error 945 can be correct by these following steps:

Hardware Issues:

Windows system can have system issues and if there is corruption problem, databases mounted on the system will also be inaccessible. In such condition one can contact the Microsoft product service provider and fix the components.

Fetch Database from Backup:

In case users are having an updated backup of the SQL databases then one can easily restore the databases from the backup. Once the databases are restored, erroneous messages will not be displayed.

Repair Solution:

The very first step which must be taken is trying the inbuilt integrity check DBCC CHECKDB command. This integrity utility will check if there is any error issue and will report it to you and if the error still persist after applying above mentioned procedures then one can also go with third party utilities to recover SQL database from suspect mode and fix SQL suspect database error 926.

Transaction Log Restore