¿Base de datos "sospechosa" de SQL Server?

40

¿Qué haces cuando tienes una base de datos que está marcada como Suspect?

Restaurar desde la última copia de seguridad?

Por favor avise.

db7
fuente

Respuestas:

41

Lo primero es asegurarse de que NO separe esa base de datos.

Restaurar desde la última copia de seguridad conocida está bien. De lo contrario, deberá utilizar el modo de reparación de EMERGENCIA (supongo que está ejecutando SQL 2005 o superior). Aquí hay un par de publicaciones de Paul Randal sobre el tema. Léelos a ambos antes de comenzar a tomar medidas.

Crear, separar, volver a adjuntar y arreglar una base de datos de SUSPECT

Reparación en modo de emergencia: el último recurso

SQLRockstar
fuente
5

Bastante si.

Generalmente significa que los archivos están bollixed o faltan o un error de disco o algo similar (he visto que un sector defectuoso causa esto).

Mis pasos

  • Asegúrese de que todas las copias de seguridad estén ahí
  • Apague SQL Server
  • chkdsk los discos utilizados por SQL Server (con suerte no su C: por supuesto)

Editar: aclararé mi respuesta

  • si los datos son importantes tendré una copia de seguridad
  • el tiempo de inactividad mientras repasa las reparaciones y el modo de emergencia es demasiado largo
gbn
fuente
5

He escrito algunas pautas sobre esto para 2 casos de base de datos sospechosa: cuando ha perdido el archivo de datos o el archivo de registro. Por favor lea lo siguiente:

yrushka
fuente
55
Así que aquí está la cosa: Stack Exchange no funciona si todo lo que publica son enlaces. Lo que necesitamos que hagas es resumir el contenido de los enlaces, o simplemente me veré obligado a eliminar tu respuesta (y luego perderás reputación, y ninguno de nosotros quiere que esto suceda)
jcolebrand
4

De su pregunta, parece que tiene una copia de seguridad. Restaurar la base de datos a partir de una buena copia de seguridad será la forma más fácil y rápida de hacer que su base de datos esté operativa y fuera del estado sospechoso.

StanleyJohns
fuente
55
Pero perderá datos si no tiene los registros de transacciones.
mrdenny
0

Mi primer consejo es; nunca separe la base de datos sospechosa. Restaurar la base de datos desde una copia de seguridad actualizada es útil. Si la copia de seguridad no está disponible o tuvo un problema, el EMERGENCYmodo puede ser útil:

Establecer la base de datos en modo de emergencia:

ALTER DATABASE DB_NAME SET EMERGENCY

Ahora verifique las inconsistencias de la base de datos con esto:

DBCC CHECKDB (‘DB_NAME’)

DBCC CHECKDB Repair permite la opción de pérdida de datos como último recurso. El resultado puede ser la pérdida de datos, por lo que no sugiero ejecutarlo.

Verifique también la referencia 1 y la referencia 2

Priyanka
fuente