Inicio » Cómo reparar una base de datos SQLite corrupta en Sonarr o Radarr
Sistemas y Servidores

Cómo reparar una base de datos SQLite corrupta en Sonarr o Radarr

Anuncio Google AdSense (Cabecera) Anuncio Adaptable / Display Ad

El Diagnóstico Rápido

El error de base de datos corrupta en Sonarr o Radarr (identificado en los logs con el mensaje database disk image is malformed) ocurre cuando el archivo interno SQLite (sonarr.db o radarr.db) se corrompe por escrituras interrumpidas, cortes repentinos de energía en tu servidor o problemas de sincronización de bloqueos de archivos en sistemas de almacenamiento en red.

🚀 Cómo solucionar el error paso a paso

Paso 1: Detener el contenedor o servicio afectado

Antes de manipular la base de datos, debes asegurarte de que no haya ningún proceso escribiendo en ella. Detén el contenedor de Docker correspondiente:

BASH
docker stop sonarr

Paso 2: Ejecutar los comandos de recuperación de SQLite

Accede al directorio donde se guardan las configuraciones del contenedor (típicamente /docker/sonarr/ o /home/usuario/appdata/sonarr/) y ejecuta las herramientas de rescate de SQLite en tu terminal:

BASH
# Exportar los datos sanos del archivo corrupto a una plantilla de recuperación
sqlite3 sonarr.db ".recover" | sqlite3 clean.db

# Respaldar la base de datos corrupta original
mv sonarr.db sonarr.db.bak

# Reemplazar la base de datos por la versión limpia recuperada
mv clean.db sonarr.db

# Verificar que los permisos del archivo sean correctos (ejemplo para Docker)
chmod 664 sonarr.db

Paso 3: Reiniciar el servicio

Vuelve a iniciar el contenedor o servicio. Sonarr leerá el archivo restaurado sin problemas:

BASH
docker start sonarr