Sqlite
sqlite(1) is a relational database. It is designed to be simple and zero-configuration.
Sqlite is public domain software because it was created by U.S. Department of Defense contractors. It is widely deployed and commonly embedded in programming languages' standard libraries.
Contents
Installation
Most Linux and BSD distributions offer a sqlite package. Debian and derivative distributions offer a sqlite3 package instead.
Usage
Sqlite databases are static files. By design, they only support one connector at a time (sidestepping entirely the question of pooled connections).
The sqlite3 command connects to a sqlite database and opens a REPL.
sqlite3 foo.db
If foo.db does not exist, it will be created when data is inserted into the database.
To backup a sqlite database, first stop the service reading from/writing to the database, then copy the file. Alternatively, use the live backup API.
sqlite3 foo.db '.timeout 1000' '.backup bak/foo.db'