linux - datos - sqlite show databases
¿Hay una utilidad de línea de comandos para validar bases de datos SQLite en Linux? (2)
Estoy buscando una utilidad de línea de comandos para validar bases de datos SQLite. Me encontré con una situación en un código heredado donde una aplicación no puede iniciarse porque un intento de acceder a una base de datos produjo el siguiente error:
database disk image is malformed
Entonces necesito instrumentar algún código de validación en la aplicación. Además, necesito una herramienta que pueda ejecutar desde el indicador de Linux para decirme simplemente si la base de datos está corrupta o no.
Gracias
Puede usar PRAGMA integrity_check en la base de datos.
Si la base de datos está dañada, puede usar este comando de SQLite:
cd $DATABASE_LOCATION
echo ''.dump''|sqlite3 $DB_NAME|sqlite3 new_repaired_$DB_NAME
mv $DB_NAME corrupt_$DB_NAME
mv new_repaired_$DB_NAME $DB_NAME
Puedes hacer algo como esto:
sqlite3 database.db "PRAGMA integrity_check"