Sometimes we have to face a critical situation when SQL Server database going to Suspect Mode. In that moment no work can be done on database. Database may go into suspect mode because the primary file group is damaged and the database cannot be recovered during the startup of the SQL Server
Reason for database to go into suspect mode:
- Data files or log files are corrupt.
- Database server was shut down improperly
- Lack of Disk Space
- SQL cannot complete a rollback or roll forward operation
How to recover database from suspect mode:
- Change the status of your database. Suppose database name is “BluechipDB”?
EXEC sp_resetstatus '';
Example:
EXEC sp_resetstatus 'BlueChipDB'
- Set the database in “Emergency” mode
ALTER DATABASE SET EMERGENCY;
Example:
ALTER DATABASE BlueChipDB SET EMERGENCY
- Check the database for any inconsistency
DBCC CHECKDB('');
Example:
DBCC checkdb('BlueChipDB')
If you get any error after executing DBCC CHECKDB then immediately bring the database in SINGLE USER MODE by running following query. If no error found then you need not execute the following query.
ALTER DATABASE SET SINGLE_USER WITH ROLLBACK IMMEDIATE
Example:
ALTER DATABASE BlueChipDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE
- For safety, take the backup of the database.
- Run the following query as next step.Remember while using the below query, that uses REPAIR_ALLOW_DATA_LOSS, is a one way operation that is once the database is repaired all the actions performed by these queries can’t be undone.
- There is no way to go back to the previous state of the database.
- So as a precautionary step you should take backup of your database in step 5 mentioned above.
DBCC CHECKDB ('', REPAIR_ALLOW_DATA_LOSS);
Example:
DBCC CheckDB ('BlueChipDB', REPAIR_ALLOW_DATA_LOSS)
- Finally, bring the database in MULTI USER mode
ALTER DATABASE SET MULTI_USER;
ALTER DATABASE [BlueChipDB] SET MULTI_USER
- Refresh your database server and verify the connectivity of your database. Now users should be able to connect to the database properly. If any data loss, you can restore database – backup taken in step 5.
HostForLIFE.eu SQL 2016 Hosting
European best, cheap and reliable ASP.NET hosting with instant activation. HostForLIFE.eu is #1 Recommended Windows and ASP.NET hosting in European Continent. With 99.99% Uptime Guaranteed of Relibility, Stability and Performace. HostForLIFE.eu security team is constantly monitoring the entire network for unusual behaviour. We deliver hosting solution including Shared hosting, Cloud hosting, Reseller hosting, Dedicated Servers, and IT as Service for companies of all size.