Aller au contenu

SQLite : installation sur Ubuntu

SQLite est un moteur de base de données relationnelle sans serveur : toute la base tient dans un seul fichier. Ce guide installe son client en ligne de commande sur Ubuntu 24.04 et 26.04. Les exemples utilisent des noms génériques (boutique.db).

Fenêtre de terminal
sudo apt update
sudo apt install sqlite3
sqlite3 --version
Ubuntu Version fournie
24.04 SQLite 3.45
26.04 SQLite 3.46

Aucun service n’est installé : SQLite est une bibliothèque, et sqlite3 est un programme qui l’utilise pour lire et modifier un fichier.

Fenêtre de terminal
sqlite3 boutique.db
CREATE TABLE essai (id INTEGER PRIMARY KEY, texte TEXT);
INSERT INTO essai (texte) VALUES ('bonjour');
SELECT * FROM essai;
.quit

Le fichier boutique.db est créé à la première écriture. Il se copie, se déplace et se sauvegarde comme n’importe quel fichier (avec les précautions de Sauvegarde et maintenance).

Convient Moins adapté
Applications locales, outils en ligne de commande, scripts Nombreux écrivains simultanés sur plusieurs machines
Petits et moyens sites web (lecture majoritaire) Accès par le réseau depuis plusieurs serveurs
Prototypes et tests Gestion fine des utilisateurs et des droits (SQLite n’en a pas)
Format d’échange et d’archivage de données Très gros volumes avec écritures concurrentes

Pour plusieurs utilisateurs et un accès réseau, voir MySQL ou PostgreSQL.

Paquet Usage
libsqlite3-dev Fichiers d’en-tête pour compiler un programme C/C++ qui utilise SQLite
sqlitebrowser Interface graphique « DB Browser for SQLite »
sqlite3-tools (selon la version) Outils annexes
Fenêtre de terminal
sudo apt install libsqlite3-dev sqlitebrowser

SQLite est intégré à de nombreux langages. Exemple avec Python (module standard sqlite3, aucune installation) :

Fenêtre de terminal
python3 - <<'CODE'
import sqlite3
connexion = sqlite3.connect("boutique.db")
for ligne in connexion.execute("SELECT sqlite_version()"):
print("Version de la bibliothèque :", ligne[0])
CODE

La version utilisée par un langage est celle de sa propre bibliothèque SQLite, pas forcément celle du client sqlite3 en ligne de commande.

Fenêtre de terminal
sudo apt purge sqlite3
sudo apt autoremove

Les fichiers de base (*.db) ne sont pas supprimés.

Symptôme Piste
sqlite3: command not found sudo apt install sqlite3
Error: unable to open database file Le dossier n’existe pas ou n’est pas accessible en écriture
database is locked Un autre processus écrit dans la base : voir Sauvegarde et maintenance (mode WAL, busy_timeout)
attempt to write a readonly database Droits insuffisants sur le fichier ou le dossier (SQLite crée des fichiers temporaires à côté de la base)

Ubuntu 24.04 et 26.04 : différences à connaître

Section intitulée « Ubuntu 24.04 et 26.04 : différences à connaître »

Aucun changement n’est cassant pour SQLite : les commandes de ce guide sont identiques sur les deux versions.