Faut-il passer à MariaDB, le fork de MySQL ?

MariaDB Logo
Le phoque remplace le dauphin de MySQL. Phoque you Oracle.

Cet article a pour but de présenter le fork de MySQL suite au rachat de Sun puis par Oracle.

Pour la partie histoire, MariaDB a été forké par le développeur à l’origine de MySQL (Monty Widenius). Il n’était cependant plus impliqué dans le développement de MySQL. Petite anecdote sur le nom du SGBD, Maria est le nom de la seconde fille de Monty.

Avantages

MariaDB se veut être un fork de MySQL plus « libre » que celui-ci (coucou Oracle), MariaDB est plus ouvert et communautaire. Tout les bugs et les roadmap concernant les nouvelles versions sont donc librement accessible (contrairement à Oracle). Pour rappel, Oracle se contente de fournir des patch sans annoncer à quoi cela sert … Regardez cette alerte de sécurité Debian. Oracle pratique la sécurité par l’obscurité. Et apparemment certaines failles ne sont toujours pas corrigées !

MariaDB est compatible à 100% avec MySQL ! (Chouette la documentation Evolix est donc compatible à 100% ;-)), le cœur du développement est basé sur la version de MySQL en upstream.

Nouvelles fonctionnalités

Nouveaux moteurs de stockage

  • XtraDB remplace InnoDB, une version améliorée par Percona conçu pour un meilleur scaling sur le matériel actuel, incluant de nombreuses fonctionnalités très utiles sur les environnements à haute performances. En savoir plus (en).
  • Aria remplace MyISAM (initialement nommé Maria, puis renommé en Aria pour éviter les confusions entre le moteur de stockage et le SGBD). Ce moteur est « crash-safe » permettant de se restaurer automatiquement après un crash. Dans sa version 2, il permettra de gérer les transactions.
    Il est aussi plus rapide pour les requêtes complexes car il n’a plus besoin d’écrire des informations temporaire sur le disque comme le faisait MyISAM. En savoir plus (en).

Amélioration des performances

  • Beaucoup d’optimisation globales sur les jointures, accès disques, gestion des accès concurrentiels, etc.
  • Réplication plus rapide et sécurisée ! Notamment grâce à l’utilisation de « groupes de commit dans les binlogs ». La réplication est annoncée comme 2 fois plus rapide qu’avec MySQL.
  • Chargement des requêtes plus efficace grâce à l’utilisation de Thread Pool, permettant de charger plusieurs requêtes par thread au lieu « d’une requête par connexion ».

En savoir plus (en), notamment un tableau récapitulatif des fonctionnalités optimisées par rapport à MySQL.

Quid des performances ?

Selon les cas, elles sont annoncées comme meilleures avec MariaDB qu’avec MySQL.

Benchmark

Les benchmark sont toujours délicats et reflètent rarement d’un environnement en production. On peut trouver des benchmarks sur le blog de MariaDB. Voici un benchmark sur les nombreuses améliorations de MariaDB 5.3, globalement MariaDB s’en sort bien mieux que MySQL.

Sucess-stories

Outre les tests de performances, on peut aussi trouver des rapports de « success‑stories ». Voici le retour du site Particulier à Particulier qui a migré en 2011 et annonce un gain en performance et stabilité.

Comment l’installer sur Debian Wheezy

MariaDB n’est pas encore disponible dans les dépôts officiels de Debian. Pour l’installer il faut donc utiliser les dépôts de MariaDB que l’on peut trouver sur leur site. Les packageurs Debian sont toujours en discussions pour savoir s’ils vont remplacer MySQL par MariaDB.

Conclusion

Faut-il passer à MariaDB ? Sans aucun doute oui ! Plus performant, plus libre, plus sécurisé (avis personnel – on ne va pas ressortir le troll sur la sécurité par l’obscurité) et futur assuré contrairement à Oracle qui pourrait décider d’abandonner MySQL (ou de le rendre complètement fermé) à tout moment ! MariaDB 10, la prochaine version toujours en cours de développement (correspondant à Oracle MySQL 5.6) semble être très prometteuse, avec des nouvelles fonctionnalités non présentes pour MySQL 5.6 (réplication multi-source, group commit plus rapide, le moteur NoSQL Cassandra, plus de statistiques pour les optimisation des moteurs, …).

De mon point de vu personnel, outre les aspects performances, MariaDB me semble être le SGBDR de référence dans le monde des logiciels libres avec PostgreSQL.

Sources

Note : Relecteur(s) apprécié(s) pour corriger les fautes 🙂

19 Replies to “Faut-il passer à MariaDB, le fork de MySQL ?”

  1. Merci pour les infos. A propos de postgres justement, je sais qu’il existe des différences importantes entre mysql (ou mariadb) et postgres, le second étant, a priori, capable de beaucoup plus de choses. Mais si tu connais des bon comparatifs entre ces deux solutions, je suis preneur 🙂

  2. Pourquoi il y aurait-il plus de chance que Oracle abandonne MySQL que de chance que MariaDB coule ?
    Car dans l’absolu, Oracle a bien plus de moyen que MariaDB pour payer ses développeurs…

      1. Ah ? Peux-tu nous donner quelques précisions ? Des chiffres peut-être ?
        Penses tu vraiment que le simple fait que des utilisateurs perdent confiance en un produit pousse les sociétés à arrêter ces produits ?
        Il ne faut pas dire n’importe quoi quand même…

        1. Pourquoi de plus en plus de distributions fournissent MariaDB par défaut au lieu de MySQL ? Parce qu’ils ont toujours confiance en Oracle ?

          Pourquoi Wikipedia (tu sais, la petite encyclopédie inconnue…) abandonne MySQL au profit de MariaDB ? Parce que c’est la mode ?
          Il me semble aussi avoir lu que Mozilla se tournait vers MariaDB, mais bon, ça doit être insignifiant…

          Comme indiqué dans l’article, Oracle s’amuse à cacher certaines corrections de bugs de MySQL… tu trouves ça normal pour un projet censé être open source ?

          Tu veux aussi que je te rapelle ce qu’à fait Oracle avec Open Office ? Là aussi c’était un bon exemple de gestion d’un projet open source de leur part 😀

          Bref, faut se renseigner un peu avant de dire n’importe quoi.

    1. Pourquoi Google abandonne t-il iGoogle, Google Reader, Google Wave, Google Gears, Google Code Search ?
      Je n’ai pas encore vu de gros et bons projets OpenSource abandonnés (sans être au moins forkés).

  3. A savoir que maintenant MySQL est gratuit pour un usage non commercial mais est payant dans le cas contraire.

    MariaDB est gratuit et open source peut importe la nature commerciale de l’utilisation finale.

  4. N’importe quoi : Mysql est payant si son utilisateur ne respecte pas la Gnu Public Licence, qui ne t’interdit pas de vendre du produit propriétaire fait avec du produit GPL ou open-source.

    Tu dois acheter une licence Mysql (2000$/serveur/an pour une version standard) si :
    – tu distribues une version de Mysql modifiée par tes soins sans en donner la source
    – tu distribues une version embeded de mysql
    – tu achètes leur support

    Pour le dernier point, je pense qu’aucun support ne sera gratuit quel que soit le SGBDR

  5. Question bête

    Qu’elle interface d’administration Web pour MariaDB ?

    PhpMyAdmin ?? ou il y en a une plus spécifique, voir dédiée.

    J’aimerai installé MariaDB sur un NAS Thecus.

  6. Pour information, MariaDB est également disponible sur les NAS SYNOLY et vient ainsi remplacer MYSQL. Il est necessaire d’installer le paquet de MARIADB avant celui de PhpMyAdmin.

  7. Les “gros” quittent mysql au risque de voir la licence changer dans le futur, et aussi parce qu’ils fixent des bugs et ajoutent des features dessus et ne veulent pas “travailler” gratos pour Oracle.

    Du coup je pense qu’on va voir fleurir pas mal de fork mysql, un peu comme avec les distri. Linux… après niveau perf, évidement ça fera jamais de grandes différences sur 98% des sites Internet ^^

Comments are closed.