Link to home
Start Free TrialLog in
Avatar of armitdept
armitdeptFlag for United States of America

asked on

SQL Batabase marked as suspect

I have an 8 gb SQL database that I found this morning to be in a suspect state. I am running SQL Server 2000 on a Windows 2000 Server SP4. Can someone assist me in the proper procedure for restoring this backup to a working state.
ASKER CERTIFIED SOLUTION
Avatar of SQL_SERVER_DBA
SQL_SERVER_DBA
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of armitdept

ASKER

This is not giving me any procedure on restoring the DB. Do I stop the SQL Services, restore and cross my fingers? Is there a way of repairing without restoring?
I got this information from SQLServerCentral...

A database can be marked for many reasons. Generally it falls into the following conditions :
A database or log file is missing.
In SQL 6.5, a device may not be present or in 7.0/2000 a file may not exist.
SQL Server may not have been able to restore the database in ample time.
The database could be corrupt.
The database is being help by the operating system. This could be a 3rd party backup software or defrag software. I've had even a virus scanning software cause this once.
SQL Server does not have enough space to recover the database on startup.
To fix this problem, perform the following functions:

Review the SQL Server and NT error logs to see if you can find where the problem occured.
Start SQL Server in single user mode.
Go to your control panel and services.
Stop SQL Server
Add the -m switch in the parameters pane below.
Start SQL Server
Run sp_resetstatus with the @dbname parameter. (ie : sp_resetstatus @dbname = "pubs")
Perform detailed DBCC checks (CHECKDB, CHECKALLOC, etc)
Run a few random queries to see if you experience any problems.
If no problems occur, stop and start SQL Server and open the database to production.
As an absolute last resort, you can place your database in emergency mode. By placing it in this mode, you will be allowed to copy data out of the database, even if the data is corrupt. To place your database in emergency mode, use the following command:

SP_CONFIGURE 'allow updates', 1
RECONFIGURE WITH OVERRIDE
GO
UPDATE master..sysdatabases set status = -32768 WHERE name = 'pubs'
GO
SP_CONFIGURE 'allow updates', 0
RECONFIGURE WITH OVERRIDE

You can then BCP data out and place it into a different database.
Is it a system database (master, model, msdb or tempdb) or a user database?

Do you have a backup of the database?

Do you have to do point in time recovery?
It is a system database. And yes I have a backup?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Glad to be of assistance. May all your days get brighter and brighter.