Blog de Analytics y Gestión de Datos

21/4/2025 | Ing. Fabiana Sasia

¿Recovery Pending en SQL? Qué es y cómo evitar el pánico

¿Por qué es importante este tema?

Cuando una base de datos entra en el estado Recovery Pending, lo primero que muchos administradores de bases de datos experimentan es una sensación de alarma. Sin embargo, es fundamental mantener la calma. En este artículo, explicaremos en detalle qué significa este estado en SQL Server, cuáles son las causas más frecuentes y qué pasos concretos puede seguir para resolverlo sin comprometer la integridad de sus datos.

¿Qué es Recovery Pending?

Este estado indica que SQL Server sabe que debe realizar una recuperación de la base de datos, pero que el proceso está atascado, no que haya fallado. Tu base de datos probablemente está bien y no está dañada. Sin embargo, mientras se mantenga este estado, la base estará inaccesible para los usuarios.

Para solucionarlo, es necesario identificar la causa raíz y resolverla. Puede tratarse de algo tan simple como añadir más espacio en disco, o bien tareas más técnicas como reparar o reconstruir archivos de base de datos.

Tomar medidas rápidas y seguras puede ayudar a restaurar la funcionalidad completa de la base.

¿Cómo verificar el estado actual de una base de datos?

Podés utilizar esta consulta en SQL Server.

SELECT name, state_desc 

FROM sys.databases

WHERE state_desc = ‘RECOVERY_PENDING’; (para ver el status de todas las bases de la instancia)

 

Esto te mostrará todas las bases de datos que se encuentran actualmente en ese estado. Identificarlo a tiempo es clave para intervenir correctamente.

7 causas comunes del estado Recovery Pending

Estas son las razones más frecuentes:

    • Apagado inesperado de SQL Server (fallos de hardware, energía, etc.).

    • El disco donde reside la base no está disponible.

    • Archivos .MDF o .LDF faltantes o renombrados.

    • La unidad de disco está llena.

    • Una actualización de SQL falló o se interrumpió.

    • Interrupciones durante operaciones grandes (como cambios en FILESTREAM).

    • Corrupción del archivo de log (.LDF).

¿Cómo reparo mi SQL Server?

 

Método 1: Revisar espacio y poner la base ONLINE

    1. Asegúrate de contar con respaldos recientes y verificados de tu base.

    2. Si no hay una razón evidente, revisá el Event Viewer de Windows para detectar errores relevantes.

    3. Si el problema es falta de espacio, podés:

      • Aumentar espacio en disco.

 

Método 2: Falta o daño en el archivo de log

¿Qué es el archivo de log?

Es un archivo esencial llamado transaction log (con extensión .ldf) que registra todas las transacciones que ocurren en la base de datos. Este archivo permite, entre otras cosas:

    • Recuperar la base ante un fallo (por ejemplo, restaurar los cambios desde el último backup).

    • Mantener la integridad del sistema.

⚠️ ¿Qué significa “falta o daño”?

    • Falta: SQL Server no puede encontrar el archivo de log donde espera encontrarlo. Tal vez fue eliminado, renombrado, movido o está en una unidad que ya no existe.

    • Daño: El archivo existe, pero está corrupto o ilegible. Puede haberse dañado por un corte de luz, un fallo de disco o problemas con el sistema operativo.

🔧 ¿Qué pasa en Recovery Pending?

Este estado indica que:

“SQL Server sabe que tiene que hacer una recuperación automática (recovery) al iniciar la base… pero no puede hacerlo porque falta el archivo de log o está dañado.”

Si esto sucede, podés revisar si el archivo .ldf está accesible, o si esta dañado y necesita un backup o tal vez puedas recrearlo.

Método 3: Reparación (último recurso)

Si los pasos anteriores no funcionan y no hay respaldo disponible, se puede intentar una reparación.

⚠️ Advertencia: Este proceso puede ocasionar pérdida de datos.

Solo utilice esta opción como último recurso. Microsoft recomienda restaurar desde el último backup válido como principal método para recuperarse de los errores reportados.

Cómo prevenir este escenario a futuro

Para evitar que una base entre en Recovery Pending, se recomienda aplicar las siguientes buenas prácticas:

      • Monitorear constantemente el espacio en disco.

      • Realizar respaldos frecuentes y verificados.

      • Automatizar alertas de integridad y espacio.

      • Mantener el hardware y suministro eléctrico en óptimas condiciones.

      • Aplicar actualizaciones de SQL Server en entornos controlados.

Conclusión

Aunque ver el estado Recovery Pending puede ser intimidante, la mayoría de las veces tiene solución sin pérdida de datos. Con un enfoque sistemático y herramientas adecuadas, podés recuperar tu base de forma segura y garantizar la continuidad del servicio.

Si necesitás ayuda para entender tus bases de datos, no dudes en escribirnos a:
📧 info@dba24.com