Accueil / Articles / MySQL ou MariaDB : lequel choisir
› ArticleMySQL ou MariaDB : lequel choisir pour votre projet.
MariaDB est née d'une scission de MySQL. Les deux se ressemblent encore, mais ils ont divergé : ce ne sont plus des remplaçants interchangeables. Voici les critères qui comptent vraiment pour choisir.
Une origine commune, des chemins qui divergent
MariaDB est née en 2009 d'une scission (fork) de MySQL, à l'initiative de ses créateurs, après l'annonce du rachat de Sun par Oracle. Pendant plusieurs années, MariaDB était un remplaçant quasi direct de MySQL. Ce n'est plus garanti aujourd'hui : chaque moteur a ajouté ses propres fonctionnalités et ses propres comportements.
Les différences qui comptent
- Gouvernance : MySQL appartient à Oracle, avec une édition communautaire et des éditions commerciales. MariaDB est développée par la fondation MariaDB et une société commerciale, sous licence libre.
- Haute disponibilité : MySQL propose la réplication de groupe (Group Replication) et InnoDB Cluster. MariaDB s'appuie souvent sur Galera Cluster. Les mécanismes de réplication et les identifiants de transactions (GTID) ne sont pas compatibles entre les deux.
- Moteurs de stockage et fonctions propres : MariaDB propose des moteurs supplémentaires (Aria, ColumnStore, Spider, entre autres) et des tables temporelles. MySQL met en avant ses outils (MySQL Shell) et, dans le cloud d'Oracle, HeatWave.
- Type JSON : MySQL dispose d'un type JSON natif en stockage binaire. Dans MariaDB, JSON est un alias de texte avec validation. Le comportement de certaines requêtes en dépend.
- Détails de comportement : authentification, collations par défaut, optimiseur et variables de configuration diffèrent selon les versions.
Les critères de choix
- Ce que supporte votre application ou votre éditeur : c'est le critère numéro un. Certains logiciels ne sont certifiés que sur l'un des deux. La plupart des CMS et frameworks courants fonctionnent avec les deux.
- L'hébergement visé : les services managés des fournisseurs de cloud ne proposent pas tous les deux moteurs, et leur catalogue évolue. À vérifier avant de s'engager.
- La haute disponibilité souhaitée : Galera ou Group Replication, selon l'architecture et les compétences de l'équipe.
- La distribution Linux et l'écosystème d'outils : plusieurs distributions livrent MariaDB par défaut, d'autres proposent MySQL.
- La position vis-à-vis d'Oracle : pour certaines organisations, la gouvernance et la licence pèsent dans la décision.
Migrer de l'un à l'autre
La migration n'est pas automatique. Il faut tester la compatibilité des requêtes, des procédures stockées, des types, de la réplication et de l'authentification. Plus les versions sont récentes et éloignées, plus les écarts sont probables. Le chemin le plus sûr : sauvegarde logique ou physique, restauration sur un environnement de test, rejeu de la charge réelle, puis bascule répétée à blanc.
Notre approche
Dans la pratique, le bon choix est souvent déjà dicté par l'application et l'hébergement. Quand il reste ouvert, on compare à partir de la charge, de la haute disponibilité nécessaire et de la facilité d'exploitation, plutôt que d'un parti pris.
À retenir
- MySQL et MariaDB ont divergé : ils ne sont plus interchangeables sans test.
- Le critère numéro un est ce que supportent votre application et votre hébergement.
- La haute disponibilité et la réplication ne sont pas compatibles d'un moteur à l'autre.
- Toute migration entre les deux se teste et se répète à blanc.
Expertises liées.
Un besoin à cadrer ?
Un premier échange suffit à définir le périmètre, le moteur concerné et la suite.