Depuis la démocratisation d’Internet, les bases de données sont devenues le pilier central de nombreux services en ligne, allant des réseaux sociaux aux boutiques en ligne, en passant par les sites d’informations et bien plus encore. Dans ce contexte, le choix d’un système de gestion de base de données est important et l’un des acteurs majeurs dans ce domaine est MariaDB. Mais qu’est-ce que MariaDB exactement ? Allons le découvrir ensemble.
Une présentation de MariaDB pour commencer
MariaDB, aujourd’hui largement reconnue dans l’univers des bases de données, est un système de gestion de bases de données relationnelles (SGBDR) open-source. Son histoire remonte à 2009, lorsque les préoccupations concernant la liberté et l’ouverture de MySQL ont commencé à émerger à la suite de l’annonce de son acquisition par Oracle. Face à cette situation et à la potentielle menace que cette acquisition représentait pour la communauté open source, les fondateurs originaux de MySQL, notamment Michael « Monty » Widenius, ont décidé d’agir.
C’est dans ce contexte que MariaDB voit le jour en 2010, avec un nom emprunté à la fille de Monty, Maria. Cette nouvelle base de données n’était pas seulement une réponse à l’acquisition d’Oracle, mais elle incarnait également une promesse : celle de garantir que les principes fondamentaux d’ouverture, de transparence et de liberté, chers à la communauté MySQL originale, seraient préservés.
Alors que MariaDB partage ses racines avec MySQL, elle a rapidement évolué pour se distinguer de son prédécesseur. L’objectif principal de ses fondateurs était de créer une version améliorée de MySQL. Ainsi, MariaDB se targue d’avoir une base de code encore plus ouverte, enrichie par des contributions de divers développeurs du monde entier. Elle propose également une palette de fonctionnalités élargies, répondant ainsi aux demandes et besoins d’une communauté en constante croissance.
L’un des points forts de MariaDB, outre ses améliorations, est sa compatibilité descendante avec MySQL. Cela signifie que toute entreprise ou développeur utilisant MySQL peut envisager de migrer vers MariaDB sans craindre de bouleversements majeurs ou de changements drastiques. Cette transition est généralement fluide, permettant ainsi de bénéficier des avantages de MariaDB tout en restant dans un environnement familier.
Les différentes versions de MariaDB (les releases)
Voici une présentation rapide des différentes versions (ou release) de MariaDB à l’heure de la publication de cet article :
Version | Date de sortie | Caractéristiques majeures |
---|---|---|
MariaDB 5.1 | 2009 | Fork de MySQL 5.1, moteur de stockage Aria, améliorations des performances |
MariaDB 5.2 | 2010 | Améliorations de l’outil SQL, nouvelles extensions PERSISTENT et VIRTUAL pour les colonnes |
MariaDB 5.3 | 2011 | Améliorations des sous-requêtes, introduction des colonnes dynamiques |
MariaDB 5.5 | 2012 | Fusion avec MySQL 5.5, améliorations des performances, introduction de la réplication en parallèle |
MariaDB 10.0 | 2014 | Moteur de stockage TokuDB, réplication GTID, connecteurs ODBC/JDBC |
MariaDB 10.1 | 2015 | Chiffrement de données au repos, améliorations de la performance, support du galera cluster |
MariaDB 10.2 | 2017 | Support des fenêtres CTE et des fonctions analytiques, améliorations JSON, CHECK CONSTRAINTS |
MariaDB 10.3 | 2018 | Procedures stockées Oracle PL/SQL, colonnes invisibles, séquence de systèmes |
MariaDB 10.4 | 2019 | Authentification basée sur des rôles, optimisations du moteur Aria, réplication optimisée |
MariaDB 10.5 | 2020 | Moteur de stockage S3, colonnes compressées, améliorations de la réplication et du clustering |
MariaDB 10.6 | 2021 | Au niveau SQL, la version 10.6.0 améliore la gestion des index, introduit l’instruction SELECT … OFFSET … FETCH … et enrichit les fonctions JSON. Pour les vues, le SGBD ajoute des éléments relatifs à InnoDB, introduit le schéma sys_schema pour les administrateurs et ajoute de nouvelles vues à la version 10.6.3 |
MariaDB 10.7 | 2021 | MariaDB 10.7, sorti en février 2022, est une version stable à maintenance courte durée d’un an. Cette version apporte de nouvelles fonctionnalités, notamment dans la gestion des UUID, du JSON, de l’optimisation, et de la réplication. Des variables obsolètes ont été retirées. |
MariaDB 10.8 | 2021 | MariaDB 10.8, sorti en mai 2022, est une version stable à maintenance courte durée d’un an. Elle apporte des améliorations notables telles que le support des paramètres INOUT pour les procédures stockées, des index descendants, des améliorations du journal redo InnoDB, et une meilleure prise en charge de l’internationalisation sous Windows |
MariaDB 10.9 | 2022 | MariaDB 10.9 apporte notamment la fonction JSON_OVERLAPS pour détecter les intersections entre deux documents JSON. De plus, des correctifs ont été effectués pour plusieurs vulnérabilités de sécurité, dont les identifiants sont : CVE-2022-32082, CVE-2022-32089, et d’autres allant jusqu’à CVE-2022-32084. |
MariaDB 10.10 | 2022 | MariaDB 10.10, maintenue jusqu’en novembre 2023, introduit une optimisation de la réplication basée sur GTID, des améliorations pour l’optimiseur et des collations, et intègre des nouveautés telles que RANDOM_BYTES et INET4. |
MariaDB 10.11 | 2022 | La version 11 de MariaDB semble apporte un changement avec l’introduction de « GRANT… TO PUBLIC », des modifications sur certains paramètres InnoDB, une option d’authentification sans mot de passe sous Windows, et des changements de noms pour les variables des slow queries. |
MariaDB 11.0 | 2022 | MariaDB 11.0, valable jusqu’en juin 2024, introduit la fonction FORMAT_PICO_TIME, des optimisations majeures pour l’Optimizer, et des changements significatifs dans InnoDB, dont la suppression du Change Buffer. |
MariaDB 11.1 | 2023 | MariaDB 11.1, valide jusqu’à août 2024, introduit la fonction JSON_SCHEMA_VALID (MDEV-27128), optimise les requêtes semi-join et l’utilisation d’index pour DATE et YEAR, et apporte des changements à InnoDB et Mariabackup, notamment le renommage des fichiers xtrabackup_*. |
MariaDB 11.2 | 2023 | MariaDB 11.2.0, sortie le 20 juin 2023, est une préversion de MariaDB 11.1 avec des améliorations pour InnoDB et le support de JSON, ainsi que des ajustements tels que l’extension des fonctions AES_ENCRYPT() et AES_DECRYPT() et des modifications liées aux variables binlog*. |
MariaDB 11.3 | 2023 | MariaDB 11.3.0, lancée le 20 septembre 2023, intègre des améliorations majeures en matière de sécurité SSL/TLS, des évolutions pour InnoDB et la réplication, et apporte une série de nouvelles fonctions touchant le cryptage, l’affichage de la date/heure et autres, tout en supprimant certaines caractéristiques obsolètes. |
Le fonctionnement de MariaDB
Plusieurs points sont à note concernant MariaDB du point de vue du fonctionnement :
- Architecture Client-Serveur : Similaire à MySQL, la structure fondamentale de MariaDB repose sur une configuration client-serveur. Dans cette configuration, le serveur MariaDB est chargé de traiter et de répondre à toutes les requêtes envoyées à la base de données. De l’autre côté, les clients ont la capacité d’interagir avec ce serveur, que ce soit pour solliciter des informations ou pour réaliser diverses opérations sur la base de données ;
- L’Essence des Requêtes – SQL : L’outil principal que MariaDB utilise pour interagir avec sa base de données est le langage SQL (Structured Query Language). Que vous souhaitiez créer une nouvelle table, ajouter des données, les extraire ou les modifier, tout passe par la formulation de requêtes SQL spécifiques ;
- Mécanismes de Stockage : En matière de stockage, MariaDB se démarque par sa flexibilité. Bien que le moteur InnoDB soit le plus fréquemment adopté, MariaDB offre d’autres alternatives tout aussi puissantes. Des moteurs tels qu’Aria, TokuDB ou encore RocksDB sont disponibles, offrant chacun des caractéristiques distinctes pour répondre aux besoins variés des utilisateurs ;
- Priorité à la Sécurité : La sécurité est une préoccupation majeure pour MariaDB. Pour garantir la protection des données, diverses fonctionnalités ont été intégrées. Parmi elles, nous retrouvons le chiffrement des données lorsqu’elles sont au repos, un système d’authentification basé sur des rôles définis, ainsi que des plugins d’authentification spécifiques pour veiller à ce que l’accès aux données soit réservé exclusivement aux utilisateurs autorisés ;
- Optimisation et Performance: MariaDB n’est pas simplement conçu pour fonctionner, mais pour exceller en termes de performances. Continuellement optimisé, il garantit des performances optimales. De plus, avec le support de fonctionnalités telles que la réplication, il assure une distribution efficace des données et une meilleure gestion de la charge, consolidant ainsi sa fiabilité et garantissant une disponibilité constante.
Quels outils célèbres utilisent particulièrement MariaDB ?
MariaDB, en tant que système de gestion de bases de données relationnelles, a gagné en popularité en tant que fork libre de MySQL après l’acquisition de MySQL par Oracle. Beaucoup de grandes entreprises et d’outils célèbres ont choisi d’adopter MariaDB pour diverses raisons, dont la transparence, la performance et la robustesse. Voici quelques exemples d’outils et de plateformes célèbres qui ont intégré MariaDB dans leur infrastructure :
- Wikipedia : L’encyclopédie en ligne gratuite, qui est l’une des plus grandes bases de données du monde, a migré de MySQL vers MariaDB. Wikipedia cherchait une solution ouverte et fiable pour soutenir son énorme volume de requêtes et de données, et MariaDB a été jugée idéale pour cette tâche ;
- WordPress : Bien que WordPress supporte toujours MySQL, MariaDB est entièrement compatible avec WordPress. De nombreux hébergeurs et utilisateurs de WordPress préfèrent utiliser MariaDB en raison de ses performances optimisées et de sa licence libre ;
- Red Hat : Red Hat Enterprise Linux, l’une des distributions Linux les plus populaires pour les entreprises, a choisi MariaDB comme solution de base de données par défaut pour sa distribution ;
- cPanel : cPanel, l’un des panneaux de contrôle d’hébergement web les plus populaires, supporte MariaDB et permet aux utilisateurs de passer facilement de MySQL à MariaDB ;
- ProtonMail : Le service de messagerie sécurisé basé en Suisse utilise MariaDB pour garantir l’intégrité et la sécurité des données de ses utilisateurs ;
- OpenSUSE : Cette distribution Linux a également opté pour MariaDB comme système de gestion de base de données par défaut, citant des préoccupations concernant l’orientation future de MySQL sous Oracle ;
- Nextcloud : La plateforme de stockage en cloud open-source, qui permet aux utilisateurs de créer leur propre service de stockage en ligne, utilise MariaDB pour gérer ses données.
Ces utilisations illustrent bien la confiance que de nombreuses grandes plateformes et entreprises accordent à MariaDB. La combinaison d’une licence ouverte, d’une compatibilité avec MySQL, et d’améliorations continues en matière de performance et de fonctionnalités, a fait de MariaDB un choix de premier plan pour de nombreux acteurs majeurs de l’industrie technologique.
Pourquoi choisir MariaDB ?
Au fil des années, MariaDB a su se tailler une place de choix parmi les systèmes de gestion de bases de données. Mais qu’est-ce qui rend cette solution si attrayante? Voici quelques raisons qui ont contribué à sa popularité grandissante :
- La philosophie Open Source : Au cœur de MariaDB se trouve sa nature open-source. Cette caractéristique ne se limite pas simplement à la disponibilité de son code. Elle offre à chacun (qu’il s’agisse d’entreprises, de développeurs indépendants ou de passionnés de technologie) la liberté d’explorer, de modifier et d’enrichir le code selon ses besoins. Cette approche démocratique stimule une innovation permanente, car elle permet à de multiples acteurs de contribuer et d’apporter leurs perspectives diverses. De plus, elle garantit une transparence totale, éliminant ainsi les « boîtes noires » souvent associées aux solutions propriétaires ;
- Une transition sans tracas pour les utilisateurs de MySQL : MariaDB n’est pas une énigme pour ceux qui sont familiers avec MySQL. En fait, grâce à sa compatibilité descendante avec MySQL, les entreprises et les développeurs qui ont déjà une infrastructure basée sur ce dernier peuvent envisager de migrer vers MariaDB avec une confiance renforcée. Les processus, les commandes et les structures qu’ils connaissent déjà restent pertinents, rendant la transition non seulement simple, mais souvent directe et sans douleur ;
- Une communauté vibrante et solidaire : Derrière MariaDB, il y a une force incroyable : sa communauté. Cette dernière, composée de professionnels, d’experts et d’enthousiastes, est un pilier fondamental de son succès. Une communauté active signifie un flux constant d’échanges, d’idées et d’innovations. Elle garantit également un support réactif, car il y a toujours quelqu’un quelque part dans le monde qui a peut-être rencontré un problème similaire ou qui a la solution à une question donnée. De plus, grâce à cette communauté, les ressources, qu’il s’agisse de tutoriels, de forums ou de modules complémentaires, sont abondantes, assurant une évolution et une adaptation continues de MariaDB aux défis émergents.
Ainsi, choisir MariaDB, c’est opter pour une solution qui allie liberté, familiarité et soutien communautaire, des atouts inestimables dans le paysage technologique actuel.
R.C.