back to Framework | Documentation Index

Repair Snapt SQLite database

If you are receiving an error in Snapt with the keywords: There has been a serious error: SQLSTATE then you likely have a crashed or corrupted SQLite database.

What is SQLite and what does Snapt use?

Snapt uses two SQLite databases – one for Snapt information and one for logging data.

These are flat file databases similar to MSSQL or MySQL that we use to store our configuration data, preferences, and then logging for all the modules.

These can be marked as “crashed” should you lose power while writing, or something else goes wrong. They can also lose tables in the event of a serious consistency failure.

Finding your SQLite databases

These are located in the “db/” folder in your Snapt install directory – typically “/srv/www/htdocs/db/” or “/usr/local/snapt/program/db/”. You can check by running the following:

ls -l /srv/www/htdocs/db
ls -l /usr/local/snapt/program/db

You are looking for the folder that has your snapt.db, log.db and potentially other .db files.

Repairing the databases

You can repair them with the following command set. This will move them to -broken and then try to create them with clean new versions –

mv log.db log-broken.db
echo ".dump" | sqlite3 log-broken.db | sqlite3 log.db

mv waf.db waf-broken.db
echo ".dump" | sqlite3 waf-broken.db | sqlite3 waf.db

mv snapt.db snapt-broken.db
echo ".dump" | sqlite3 snapt-broken.db | sqlite3 snapt.db

chmod 777 log.db waf.db snapt.db

Checking the status

Now you can go to Reports -> Dashboard and then the Database Status tab in the user interface. You should see a status of Good and your various tables below that.

Free Trial!

If you are just learning about Snapt why not try it?