1. Denial of access to a database resource by the operating system
2. Anti-virus/3rd party software blocking access
3. The hardware/network issue or corruption of database file(s)
The recovery
methods below are last resort only. At minimum the server should be
rebooted (Windows restart - hardboot), if possible at all, a database
copy should be created. If backup files exist, point-in-time recovery is
preferred to emergency repair.
-- Check suspect state (status) of all databases
SELECT DBName=NAME, [Status]=state_desc
FROM master.sys.databases
WHERE state_desc='SUSPECT'
------------
------------
-- SQL Server 2000/2005/2008 - Recover database suspect sql server
USE master;
GO
EXEC sp_resetstatus 'CopyOfAdventureWorks2008';
GO
USE CopyOfAdventureWorks2008;
DBCC CHECKDB WITH NO_INFOMSGS;
GO
The latest database marked suspect recovery process:
-- SQL Server 2005/2008
-- Recover database marked suspect sql serve
USE master;
GO
ALTER DATABASE CopyOfAdventureWorks2008 SET EMERGENCY
GO
ALTER DATABASE CopyOfAdventureWorks2008 SET SINGLE_USER
GO
DBCC CHECKDB (CopyOfAdventureWorks2008, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS;
GO
USE CopyOfAdventureWorks2008;
DBCC CHECKDB WITH NO_INFOMSGS;
GO
Source : sqlusa
No comments:
Post a Comment