![]() |
|
|
|
|
|
Uno de los posibles
estados de una base de datos es Suspect. Cuando SQL
Server no puede asegurar la integridad de una base, ésta asume
ese estado.
Los motivos por los cuales se produce esta situación son amplios, pero normalmente se debe a apagados repentinos del servidor por fallas de hardware, cortes de energía, etc. También, se suele dar por procesos de Recovery no terminados (falta de espacio en disco, etc.)
Cuando una base se encuentra en ese estado, se verá grisada en el Enterprise Manager y bajo su nombre se indicar entre paréntesis 'Suspect' :
Cuando una base de datos se encuentra en ese estado, no puede ser utilizada. En el combobox de bases de datos del Query Analizer no figurará y si se ejecuta la instrucción USE fallará.
Si escribimos USE PADRON, nos dará el siguiente mensaje de error:
Server:
Msg 945, Level 14, State 2, Line 1
Database 'Padron' cannot be opened due to accessible files or insufficient
memory or disk space.
Para
resolver esta situación, se deberá utilizar el stored procedure
sp_resetstatus.
Dado que este stored procedure modifica tablas del sistema, el DBA deberá
habilitar la actualización de las mismas antes de la ejecución,
y después de la misma volver a deshabilitarla.
Habilitar la opción
USE
master
GO
sp_configure 'allow updates', 1
GO
RECONFIGURE WITH OVERRIDE
GO
Al ejecutar el stored procedure solamente se deberá indicar el nombre de la base que se desea afectar:
sp_resetstatus 'Padron'
(o la base de datos que tengas en suspect)
GO
Una vez hecho esto, se deberá reiniciar el servicio de SQL Server y se recomienda deshabilitar la actualización de las tablas.
Deshabilitar la
opción
USE master
GO
sp_configure 'allow updates', 0
GO
RECONFIGURE WITH OVERRIDE
GO
Si todo ha ido bien ya tendremos la bases de datos disponible, como se muestra en la imagen:
Os dejo también
este link a la web de Tibor Karaszi (SQL Server MVP) donde hay un artículo
muy interesantes sobre este mismo tema:
http://www.karaszi.com/SQLServer/info_corrupt_suspect_db.asp
|
Para cualquier tipo de sugerencia, colaboración o comunicación, diríjanse a |