[SQL Server 2014] – Bases de Datos en Estado Recovery Pending.

Hola Comunidad;
Unos amigos tuvieron problemas en un Cluster de SQL, la cual se tuvo que volver a crear el volumen donde se encontraba el LOG (ldf) de todas las Bases por lo que el estado de las mismas era Recovery Pending, en la presente publicación los mostraré como reconstruir el LDF.

1.png

Bien el inconveniente fue el siguiente:

El almacenamiento junto a los nodos del cluster se apagaron de forma intempestiva por lo que al momento de volver a encender todos los servidores los volúmenes en los nodos que formaban parte del cluster cargaban menos el de LOG donde se almacenan todos los LDFs por lo que el estado de todas las bases de datos es Recovery Pending.

1.png

Lo que tenemos que hacer es en una nueva QUERY colocar la base de datos en Emergencia.

ALTER DATABASE NombreBaseDatos SET EMERGENCY;

Ejecutamos el comando y al momento de refrescar las Base de Datos se cambiará de color a Rojo.

3.png

Luego reconstruimos el LOG ejecutando el siguiente comando:

ALTER DATABASE NombreBaseDatos REBUILD LOG ON
(NAME = N’NombreLOG’, FileName = N’RutaLOG’)
GO

Nos mostrará un mensaje indicando que la consistencia transaccional se ha perdido (es normal este mensaje).

4.png

Verificamos que el archivo del LOG se ha creado en la ruta de la Query.

5.png

Ahora ejecutamos el siguiente comando:

ALTER DATABASE NombreBaseDatos SET ONLINE, MULTI_USER

Refrescamos nuestras base de datos y se podrá visualizar que ya esta en linea.

6.png

No olvidar que luego de este procedimiento es bueno que realicen un DBCC CHECKDB(NombreBaseDatos), verifiquen los indices y las tablas asegurándose que los datos se encuentren.

Muchas Gracias!

6 comentarios en “[SQL Server 2014] – Bases de Datos en Estado Recovery Pending.

Deja un comentario