Comparison

MySQL vs MariaDB

MariaDB is a fork of MySQL created by the original author after Oracle acquired MySQL. They are compatible at the basic level but are diverging in the details.

AspectMySQLMariaDB
OriginThe original project, owned by OracleA 2009 fork of MySQL, developed by MariaDB Foundation and MariaDB plc
LicenseGPLv2 for Community, Oracle also sells commercial editionsGPLv2, fully open
CompatibilityThe reference for protocol and clientsSame protocol, most apps work unchanged, but newer versions have differences
JSONNative JSON type with binary storageJSON as an alias of a text type with functions to work with it
Storage enginesMostly InnoDBInnoDB plus extras: Aria, ColumnStore, MyRocks, Spider
ClusteringGroup Replication and InnoDB ClusterGalera Cluster bundled with the distribution
Unique featuresClose ties with the Oracle ecosystem, HeatWave in Oracle CloudSequences and system-versioned temporal tables
Managed servicesAvailable in almost every cloud (RDS, Cloud SQL, Azure)Available in RDS and Azure, shipped as a package by Linux distributions

Choose MySQL when

  • Your hosting or CMS explicitly requires MySQL.
  • You need the native JSON type and Oracle tooling compatibility.
  • You want maximum predictability for apps targeting MySQL.

Choose MariaDB when

  • You want a fully open project with no Oracle dependency.
  • You need Galera, sequences or temporal tables.
  • Your Linux distribution ships MariaDB by default.

Bottom line

For a typical web app the difference is small, both give a mature relational store. Check what your app requires, and do not mix them in one replication setup without testing. For a new project with no constraints, many teams pick PostgreSQL instead.

Compared

Logos belong to their owners and are used for identification only. Icons: Simple Icons (CC0), Devicon (MIT).