Backup & troubleshooting
Your entire lexicon lives in one file. That makes backups trivial â and makes knowing the safety rules important.
Data location
| What | Where |
|---|---|
| Database file | lexicon.db |
| Location | The same directory as the Lexicon executable |
| Format | Standard SQLite 3 â readable with any SQLite tool |
Portable by design Moving your knowledge base to another machine means copying lexicon.db next to the executable there. That's it.
Backup strategies
- Close Lexicon. This guarantees the database is not mid-write.
- Copy
lexicon.dbto safe storage â external drive, NAS, or a synced folder. - Version your backups â keep dated snapshots (daily or weekly) instead of overwriting a single copy:
cp lexicon.db ~/backups/lexicon-$(date +%F).db
Automate it A one-line cron job (or scheduled task on Windows) that copies the file once a day is all a personal knowledge base usually needs. If your lexicon is mission-critical, back up more often.
Deletion safety rules
Lexicon uses cascade deletion to keep the database consistent. Know the two rules before you delete anything:
Deleting a term also removes its aliases, tags, flags, and all links/backlinks pointing to or from it.
Deleting a map removes every term inside it â including all of their content and metadata. This is the most destructive action in the application.
There is no undo for deletions. When in doubt, make a quick copy of lexicon.db first.
Troubleshooting
The app does not start (Qt plugin / driver issue)
- Verify that the Qt 6 runtime is installed and matches the version Lexicon was built against.
- Ensure the SQLite Qt SQL driver is present â on Debian/Ubuntu:
sudo apt install libqt6sql6-sqlite.
Database errors on startup
- Check that the directory containing the executable is writable â Lexicon needs to create and update
lexicon.dbthere. - Make sure
lexicon.dbis not locked by another process (another running Lexicon instance, a DB browser, or a sync tool holding the file).
The build fails
- Confirm your compiler supports C++23 (recent GCC, Clang, or MSVC).
- Confirm CMake can find
Qt6::WidgetsandQt6::Sqlâ setCMAKE_PREFIX_PATHto your Qt installation if needed. - See the developer build guide for platform details.
Still stuck?
Open an issue on GitHub with your OS, Qt version, and the exact error message.