【问题标题】:Is there a command line utility for validating SQLite databases in Linux? [closed]是否有用于在 Linux 中验证 SQLite 数据库的命令行实用程序? [关闭]
【发布时间】:2013-08-15 18:13:19
【问题描述】:
我正在寻找一个命令行实用程序来验证 SQLite 数据库。我在一些继承的代码中遇到了一个应用程序无法启动的情况,因为尝试访问数据库产生了以下错误:
database disk image is malformed
所以我需要在应用程序中检测一些验证代码。不过,此外,我需要一个可以从 Linux 提示符运行的工具来简单地告诉我数据库是否损坏。
谢谢
【问题讨论】:
标签:
linux
command-line
sqlite
corruption
【解决方案1】:
你可以这样做:
sqlite3 database.db "PRAGMA integrity_check"
【解决方案2】:
您可以在数据库上使用PRAGMA integrity_check。
如果数据库损坏,您可以使用以下 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