Quelle base de données choisir sur Raspberry Pi ? (Top 5)
De nombreux projets sur Raspberry Pi nécessitent un système de base de données pour stocker diverses données à utiliser plus tard. Héberger une base de données peut même être un projet en soi, vu les nombreuses options disponibles sur Raspberry Pi, et faire un choix n’est pas toujours simple. Dans cet article, je vais vous présenter les solutions les plus populaires et expliquer les avantages et les inconvénients de chacune pour vous aider à faire votre choix.
Dans l’ensemble, il n’existe pas de système de gestion de base de données parfait pour tous les cas d’utilisation sur Raspberry Pi. C’est un choix personnel : chaque système a ses avantages et ses inconvénients, donc la décision variera en fonction des objectifs du projet et des compétences du développeur.
En tant que développeur web, j’ai tendance à utiliser les mêmes technologies (langage de programmation et système de base de données). Ce n’est pas parce qu’ils sont les « meilleurs » choix, mais plutôt parce que je peux tout créer beaucoup plus rapidement en utilisant ce que je connais. Quoi qu’il en soit, si vous n’avez pas encore vos préférés, voyons quelles options vous devriez considérer.
Si, comme moi, vous mélangez parfois la syntaxe entre différents langages de programmation, j’ai exactement ce qu’il vous faut. J’ai créé une fiche mémo Python avec toute la syntaxe essentielle au même endroit, pour que vous puissiez l’avoir sous la main et éviter toute confusion. Téléchargez-la gratuitement ici !
MariaDB (MySQL)

MariaDB est un fork gratuit et open source de MySQL, créé lorsque Oracle a acheté Sun (et donc MySQL) il y a quelques années. Il s’est beaucoup amélioré depuis, donc MariaDB est presque le choix par défaut lors de l’installation d’un nouveau serveur MySQL.
Bien que de nombreuses autres options tentent de reprendre la position de leader de MySQL dans la hiérarchie des bases de données, c’est toujours l’une des options les plus populaires. J’ai fait un sondage sur ma chaîne YouTube, et presque 70 % de mes abonnés le recommandent encore sur Raspberry Pi :

MariaDB est un excellent choix pour stocker une grande quantité de données, surtout si vous devez gérer plusieurs utilisateurs avec différents niveaux de permissions. Il est particulièrement utilisé pour des projets web (avec le langage PHP en général).
Il fonctionne bien sur les modèles récents de Raspberry Pi avec des bases de données petites à moyennes, mais pourrait être un peu trop lourd pour les anciens modèles ou le Raspberry Pi Zero.

Quand vous regardez Google Trends, MySQL est toujours la solution la plus populaire, donc il sera facile de trouver de la documentation, des forums et de l’aide en utilisant ce système de base de données dans vos projets.
MariaDB/MySQL utilise SQL pour les requêtes, qui est aussi le langage le plus populaire, donc il n’y a pas de problème à trouver des ressources à ce sujet quand vous essayez de faire des requêtes complexes.
En tant que développeur web, j’ai principalement travaillé avec MySQL et PHP pendant des années, donc c’est généralement mon choix par défaut quand je commence de nouveaux projets. Je suis rarement déçu ou bloqué avec ça, donc je le recommanderais dans la plupart des situations.
Installation
MariaDB est disponible dans le dépôt par défaut de Raspberry Pi OS et la plupart des autres distributions, donc l’installer devrait être simple. C’est l’une des rares solutions de cette liste qui fonctionne en mode client/serveur, ce qui signifie que vous devez d’abord installer un serveur.
Au fait, vous pouvez avoir un serveur MySQL sur un autre Raspberry Pi (ou ordinateur) si nécessaire. Si votre projet utilise un modèle de Raspberry Pi très limité mais peut accéder à un autre appareil exécutant le serveur MySQL, c’est bon.
Pour vérifier si vous avez déjà MySQL installé (en anglais), vous pouvez suivre cet autre article que j’ai écrit à ce sujet.
S’il n’est pas (encore) installé, suivez ces étapes pour l’obtenir sur votre Raspberry Pi :
Je vous conseille aussi : Voici les meilleures applis Linux (testées pour vous)
Si comme moi, vous avez tendance à mélanger les langages, téléchargez mon antisèche pour Python au format PDF.
Télécharger maintenant
Avant d’installer le serveur, faites les mises à jour du système avec :sudo apt update
sudo apt upgrade
Ensuite, installez MariaDB avec :sudo apt install mariadb-server

Mais il y a quelques étapes supplémentaires à effectuer pour créer le mot de passe root et le premier utilisateur.
J’explique tout dans ce tutoriel complet sur comment utiliser MariaDB sur Raspberry Pi.
Comme MariaDB/MySQL peut gérer différents niveaux de permissions, cela peut être un peu compliqué pour les débutants, mais vous comprendrez rapidement en lisant mon tutoriel. Je partage aussi un outil graphique que vous pouvez utiliser pour gérer votre serveur MySQL, sans avoir à taper des tonnes de commandes et de requêtes SQL.
Utilisation
Une fois le serveur installé, le serveur MySQL peut être accessible avec presque n’importe quel langage. Vous devrez peut-être installer des paquets supplémentaires pour l’utiliser, mais vous trouverez facilement de l’aide pour votre langage préféré.
Par exemple, si vous utilisez PHP pour créer votre projet web, vous devrez installer ce paquet pour vous connecter à votre nouveau serveur MySQL avec :sudo apt install php-mysql
Une fois cela fait, vous pouvez utiliser toutes les fonctions PHP répertoriées sur le site Web PHP.
En Python, vous pouvez utiliser PIP pour installer le connecteur MariaDB, quelque chose comme :sudo pip3 install mariadb
Il y a un excellent tutoriel sur le site officiel de MariaDB pour commencer avec MariaDB et Python (lien ici).
Voir aussi : Les 5 navigateurs les plus rapides sur Raspberry Pi
Si les commandes Linux ce n’est pas trop votre truc, n’hésitez pas à jeter un œil à cet article qui vous explique les commandes qu’il faut absolument connaître. Je vous donne aussi une antisèche à télécharger pour les avoir toujours sous la main !
SQLite

SQLite est une alternative intéressante à MySQL, surtout sur Raspberry Pi. Ce système de base de données est beaucoup plus léger (d’où son nom). Vous avez besoin de moins de 1 Mo pour l’installer, tandis que MariaDB nécessite presque 200 Mo de divers paquets.
SQLite est un système de base de données sans serveur qui est autonome. Il a de nombreuses limitations qui pourraient poser problème pour des projets plus importants (utilisateur unique sans authentification, par exemple), mais pour de petits projets à la maison, c’est souvent la manière la plus simple de commencer.
En résumé, SQLite est idéal pour de petits projets autonomes qui utilisent une quantité limitée de données et n’ont pas de connexion réseau.
Note : TinyDB est une autre alternative à considérer, très proche de SQLite. Je ne vais pas donner une introduction complète à ce sujet, mais en gros, TinyDB est encore plus léger qu’SQLite. Certaines fonctionnalités manquent, mais vous n’en aurez généralement pas besoin pour de petits projets Raspberry Pi.
Installation
Pour installer SQLite sur Raspberry Pi OS (et sur toute distribution basée sur Debian), vous pouvez simplement exécuter cette commande :sudo apt install sqlite3
À partir de là, vous pouvez utiliser la commande sqlite3 pour créer vos bases de données et interagir avec elles.
Voici par exemple mes logs lorsque je l’ai testé sur mon Raspberry Pi :

Comme vous pouvez le voir, je pointe simplement vers le fichier de base de données après la commande « sqlite3 ». Il sera créé s’il n’existe pas encore.
Ensuite, vous pouvez directement utiliser des commandes SQL pour créer une table, insérer des données et faire des requêtes.
C’est aussi simple que ça. Évidemment, vous devez savoir comment utiliser le langage SQL, mais tout le reste est simple.
Utilisation
Tout comme pour MariaDB, vous devrez ensuite installer un connecteur pour accéder à la base de données SQLite depuis le code de votre projet :
- Avec PHP :
sudo apt install php-sqlite3
Une fois installé, vous pouvez utiliser les fonctions SQLite3. - Avec Python, cela devrait fonctionner directement, voici un exemple basique :

Rappelez-vous qu’il n’y a pas de sécurité, d’utilisateurs ni de permissions avec cette solution. C’est super parce qu’elle est facile à mettre en place et à commencer à utiliser, mais ne l’utilisez pas pour des projets plus importants avec des données sensibles.
MongoDB

MongoDB est très différent des options précédentes listées dans cet article. C’est un système de gestion de base de données non relationnel, ce qui signifie que le stockage des données est très flexible. En gros, c’est une association de clés et de valeurs, qui peuvent être de n’importe quel type (chaînes, tableaux, objets, etc.).
Il n’utilise pas le langage SQL ni de variante de celui-ci. Il utilise MQL (MongoDB Query Language) qui est complètement différent de ce à quoi vous pourriez être habitué.
Dans l’ensemble, c’est une option acceptable si vous n’avez pas d’expérience avec MySQL (certaines personnes diront qu’il est plus facile de commencer avec MongoDB plutôt qu’avec MySQL) et que vous avez besoin de plus de flexibilité (par exemple, si votre projet n’est pas complètement défini et peut beaucoup évoluer avec le temps).
À lire aussi : 15 projets faciles pour débuter avec un Raspberry Pi
Si comme moi, vous avez tendance à mélanger les langages, téléchargez mon antisèche pour Python au format PDF.
Télécharger maintenant
Pour être honnête, je ne suis pas un grand fan de MongoDB. J’ai eu beaucoup de problèmes avec, en termes de sécurité et de compréhension de base pour trouver ce que je cherche dans des bases de données créées par d’autres développeurs. Mais c’est probablement parce que je le connais moins que les solutions basées sur SQL.
Installation
Installer MongoDB sur Raspberry Pi OS est particulièrement complexe, car il n’est pas disponible dans le dépôt par défaut, et ils n’ont pas de paquet compilé que vous pouvez télécharger depuis leur site.
La seule option est de le compiler à partir des sources, comme expliqué dans leur documentation.
Il m’a fallu un certain temps et mon système a planté, donc je ne peux vraiment pas le recommander, mais si vous voulez essayer, consultez leur documentation. J’ai aussi trouvé un projet Mongo for Pi sur GitHub, mais je ne l’ai pas testé, donc je ne peux pas vraiment le recommander non plus.
La manière la plus simple d’obtenir MongoDB sur votre Pi est d’installer Ubuntu d’abord. Ensuite, vous pouvez suivre cette page dans leur documentation pour ajouter le dépôt et suivre les autres étapes de configuration.
Utilisation
Une fois MongoDB installé et votre première base de données créée, l’utiliser sur Raspberry Pi n’est pas très différent des solutions précédentes.
Par exemple, pour vous connecter à votre base de données Mongo avec Python, vous devez d’abord installer cette bibliothèque :sudo apt install python3-pymongo
À lire aussi : Transformez votre Raspberry Pi en une machine à sous
Et vous pouvez ensuite importer « pymongo » dans votre script et utiliser toutes ces fonctions.
PostgreSQL

PostgreSQL est l’une des bases de données les plus populaires dans les environnements d’entreprise. La principale différence avec MySQL est que PostgreSQL est une base de données orientée objet, tandis que MySQL est une base de données relationnelle. PostgreSQL est également recommandé pour les requêtes complexes, les grands entrepôts de données et l’analyse de données.
Il est en concurrence avec MySQL depuis longtemps. On dirait que MySQL/MariaDB gagne, mais PostgreSQL est très stable dans les tendances, donc je suppose qu’il y a encore beaucoup de développeurs qui l’utilisent :

PostgreSQL ne correspond pas exactement à l’utilisation traditionnelle de Raspberry Pi, qui est généralement pour de petits projets. Mais si vous êtes habitué à PostgreSQL, je comprends que vous pourriez vouloir l’utiliser sur votre Raspberry Pi aussi.
Installation
Comme MariaDB, PostgreSQL est disponible dans le dépôt par défaut de Raspberry Pi OS, donc vous pouvez l’installer avec :sudo apt install postgresql

Vous devrez ensuite créer le premier utilisateur avec :sudo su postgres
createuser $USER -P --interactive
Et ensuite utilisez la commande psql pour vous connecter à votre base de données, et utilisez le langage SQL pour tout gérer :psql
Je vous conseille aussi : Voici les meilleures applis Linux (testées pour vous)
J’ai un tutoriel complet sur la configuration de PostgreSQL sur Raspberry Pi ici si vous avez besoin de plus de détails.
Utilisation
PostgreSQL est très populaire et fonctionne avec presque n’importe quel langage.
Si vous voulez l’utiliser avec Python, la bibliothèque la plus couramment utilisée est psycopg2 :sudo pip3 install psycopg2
Vous pouvez ensuite l’importer dans vos scripts et utiliser la classe pour vous connecter à votre base de données.
Voici un excellent tutoriel pour commencer avec Python et PostgreSQL.
InfluxDB

La dernière option que je veux vous présenter est InfluxDB, une base de données de séries temporelles. Bien qu’elle stocke et interroge de grandes quantités de données comme n’importe quelle autre base de données, InfluxDB est plus optimisée pour les données horodatées ; en d’autres termes, lorsque l’index clé est le temps.
Les bases de données de séries temporelles sont traditionnellement utilisées dans l’analyse des marchés financiers et les configurations d’automatisation industrielle. Cependant, elles peuvent également être extrêmement pratiques pour des tâches de surveillance système, DevOps, surveillance IoT et surveillance des données de capteurs.
Contrairement aux bases de données relationnelles que nous avons couvertes plus tôt, InfluxDB a été conçue comme une base de données de séries temporelles dès le départ, et est donc optimisée pour cet usage. InfluxDB a également une version optimisée pour les appareils à faible consommation comme le Raspberry Pi.
Installation
InfluxDB ne peut pas être installé depuis le dépôt par défaut sur Raspberry Pi OS. Au lieu de cela, vous devrez ajouter manuellement son dépôt pour l’installer.
Voici un résumé rapide de la façon d’installer InfluxDB sur Raspberry Pi :
- Ajoutez la clé GPG sécurisée et le dépôt en collant cette longue commande :
curl --silent --location -O https://repos.influxdata.com/influxdata-archive.key
gpg --show-keys --with-fingerprint --with-colons ./influxdata-archive.key 2>&1 \
| grep -q '^fpr:\+24C975CBA61A024EE1B631787C3D57159FC2F927:$' \
&& cat influxdata-archive.key \
| gpg --dearmor \
| sudo tee /etc/apt/keyrings/influxdata-archive.gpg > /dev/null \
&& echo 'deb [signed-by=/etc/apt/keyrings/influxdata-archive.gpg] https://repos.influxdata.com/debian stable main' \
| sudo tee /etc/apt/sources.list.d/influxdata.list
- Actualisez le dépôt pour voir les nouveaux paquets :
sudo apt update - Installez le paquet InfluxDB :
sudo apt install influxdb2 - Après son installation, vous devez également démarrer le service InfluxDB :
sudo systemctl start influxdb

Utilisation
Vous pouvez utiliser InfluxDB depuis une interface graphique ou depuis la ligne de commande.
L’interface graphique facilite la gestion. Il suffit de visiter le panneau web depuis un navigateur :http://<ADRESSE IP ou NOM D'HÔTE>:8086

Si vous aimez faire les choses manuellement, vous pouvez toujours invoquer la commande depuis la ligne de commande :influx

J’ai un tutoriel complet sur Comment commencer avec InfluxDB sur Raspberry Pi que vous pouvez suivre si vous voulez plus de détails.
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant
Rappel: J'ai crée une communauté d'utilisateurs de Raspberry Pi qui vous permet de partage vos avancées, poser vos questions et recevoir de nombreux avantages exclusifs (anglophones uniquement). Cliquez sur le lien pour en savoir plus.
Questions connexes
SQL Server peut-il fonctionner sur Raspberry Pi ?
SQL Server est le système de gestion de base de données créé par Microsoft pour les serveurs Windows. Ils ont sorti une version pour les serveurs Linux il y a quelque temps, mais elle est seulement conçue pour les architectures x86, ce qui signifie qu’elle est incompatible avec un Raspberry Pi.
Une alternative serait d’exécuter Azure SQL Edge dans Docker ou d’avoir un autre ordinateur exécutant Windows pour héberger le serveur. Vous pouvez ensuite utiliser ODBC avec la plupart des langages pour vous connecter au serveur SQL depuis votre Raspberry Pi.
Dans l’ensemble, les produits Microsoft (Windows ou SQL Server) peuvent fonctionner mais ne sont pas optimisés pour le Raspberry Pi, donc je ne recommanderais pas de les utiliser pour l’instant.
Comment voir et gérer les bases de données sur Raspberry Pi ?
Chaque système de gestion de base de données a un ensemble d’outils que vous pouvez utiliser pour vous faciliter la vie et gérer les bases de données et les permissions depuis une interface graphique. MariaDB/MySQL a PHPMyAdmin, SQLite a DB4S, MongoDB a Compass, etc.
Donc, même si vous devrez taper quelques commandes pour les installer, vous utiliserez très probablement une interface graphique après cela pour les opérations quotidiennes.
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant
Ressources supplémentaires pour votre Raspberry Pi
Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant
Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici
Maîtrisez Python sur Raspberry Pi
Pas besoin d’être un génie pour coder quelques lignes pour votre Raspberry Pi.
Je vous apprends juste ce qu’il faut sur Python afin de réaliser n’importe quel projet. La seconde partie du livre est d’ailleurs consacrée à des exemples de projets où je vous guide pas à pas.
Ne perdez pas de temps, apprenez le strict nécessaire et économisez 10% avec ce lien :
Télécharger maintenant
Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources
