Quelle est la différence entre MariaDB et MySQL?

82

Quelle est la différence entre MariaDB et MySQL? Je ne suis pas très familier avec les deux. Je suis principalement un développeur front-end pour la plupart.

Sont-ils syntaxiquement similaires? En quoi ces deux langages de requête diffèrent-ils?

Wikipedia ne mentionne que la différence entre les licences:

MariaDB est une branche de la base de données MySQL développée par la communauté, l'impulsion étant la maintenance par la communauté de son statut libre sous GPL, par opposition à toute incertitude sur le statut de la licence MySQL sous sa propriété actuelle par Oracle.

chrisjlee
la source
Cela pourrait être utile: hackr.io/blog/mariadb-vs-mysql
Saurabh Hooda

Réponses:

95

MariaDB est une alternative à MySQL compatible avec les versions antérieures . Cela signifie:

  • Les fichiers de définition de données et de table (.frm) sont compatibles binaires.
  • Toutes les API, protocoles et structures client sont identiques.
  • Tous les noms de fichiers, fichiers binaires, chemins, ports, sockets, etc., doivent être identiques.
  • Tous les connecteurs MySQL fonctionnent sans modification avec MariaDB.
  • Le paquet mysql-client fonctionne également avec le serveur MariaDB.

Dans la plupart des scénarios pratiques, MariaDB version 5.xy fonctionnera exactement comme MySQL 5.xy. MariaDB suit la version de MySQL, c'est-à-dire que son numéro de version est utilisé pour indiquer la version de MySQL avec laquelle il est compatible.

MariaDB a été créé par Michael "Monty" Widenius, l'un des développeurs originaux de MySQL et cofondateur de MySQL Ab. La Fondation MariaDB est le dépositaire de MariaDB.

La principale motivation de MariaDB était de fournir une version floss de MySQL, au cas où Oracle irait à l’ensemble de l’entreprise avec MySQL. Il convient de noter que Monty s'est prononcé contre l'acquisition de MySQL (via l'acquisition de Sun) par Oracle.

Bien que MariaDB soit censé être compatible avec MySQL, il existe, pour une raison ou une autre, quelques problèmes de compatibilité et différentes fonctionnalités :

  • MariaDB inclut tous les moteurs open source populaires,
  • MariaDB réclame plusieurs améliorations de la vitesse par rapport à MySQL, et
  • il y a quelques nouvelles extensions de fil qui manquent à MySQL

    Enfin, le nom vient de Maria, la fille de Monty (l'autre étant My), MySQL étant désormais une marque déposée d'Oracle Corporation.

Yannis
la source
1
Merci pour l'explication très complète. Exactement ce que je cherchais.
Chrisjlee
5
MariaDB n’est explicitement pas complet avec SQL-99, comme indiqué sur la page à laquelle cette réponse renvoie. Par exemple, il ne supporte pas du tout les assertions et les CTE ne sont pas encore parvenus à une version stable. L'histoire est à peu près la même pour MySQL.
Air
Je pense que les liens vers montyprogram dot com sont pourris, mais je ne sais pas où des équivalents pour ces liens pourraient être trouvés en ligne.
Hay
MariaDB soutient InnoDB, n'est-ce pas? pourquoi c'est écrit comme ça?
Paulson Peter
1
@PaulsonPeter Oui, MariaDB prend en charge InnoDB. Je ne sais pas de quoi traite votre deuxième question.
Yannis
15

C'est une fourchette - deux projets distincts commençant à partir de la même base de code d'origine mais se déplaçant dans des directions distinctes. Cela s'est souvent produit avec les projets open source où Oracle a racheté les sociétés sponsors.

A ma connaissance, MariaDB est maintenu et amélioré par les développeurs MySQL d'origine, et MySQL est maintenu et amélioré par Oracle. Cela dépend de qui vous voulez faire ce travail.


la source