MariaDB Corporation has a MariaDB vs MySQL white paper available for download.
See also MariaDB vs MySQL - Compatibility
For differences between specific releases, see
For unmaintained versions, see
For a detailed breakdown of system variable differences, see:
For a detailed breakdown of function differences, see:
In addition to the standard , , , , , and storage engines, the following are also included with MariaDB Source and Binary packages:
, a column oriented storage engine optimized for Data warehousing.
, a storage engine with great compression, in 10.2
, MyISAM replacement with better caching.
(drop-in replacement for Federated)
MariaDB now provides much faster privilege checks for setups with many user accounts or many database
The new command allows SSL certificates to be reloaded without restarting the server
Many optimizer enhancements in . are now finally usable. The complete list and a comparison with MySQL is . A benchmark can be found .
Faster and safer replication:. This makes many setups that use replication and lots of updates
We've added a lot of new features to MariaDB. If a patch or feature is useful, safe, and stable — we make every effort to include it in MariaDB. The most notable features are:
Support introduced for . Allows queries to access both current and historic data, aiding in managing retention, analysis and point-in-time recovery. — new in 10.3
can now run as Instant operations. Can also now change the ordering of columns. — new in 10.4
Support introduced for password expiration, using the — new in 10.4
In order to support the use of multiple authentication plugins for a single user, the system table has been retired in favor of the
For a full list, please see
More tests in the test suite.
Bugs in tests fixed.
Test builds with different configure options to get better feature testing.
Remove invalid tests. (e.g. don't test feature ''X'' if that feature is not in the tested build)
Bugs are bad. Fix as many bugs as possible and try to not introduce new ones.
Compiler warnings are also bad. Eliminate as many compiler warnings as possible.
All code in MariaDB is released under GPL, LGPL or BSD.
MariaDB does not have closed source modules like the ones that can be found in MySQL Enterprise Edition. In fact, all the closed source features in MySQL 5.5 Enterprise Edition are found in the MariaDB open source version.
MariaDB client libraries (for C, for Java (JDBC), for Windows (ODBC)) are released under LGPL to allow linking with closed source software. MySQL client libraries are released under GPL that does not allow linking with closed source software.
MariaDB includes test cases for all fixed bugs. Oracle doesn't provide test cases for new bugs fixed in MySQL 5.5.
For unmaintained versions, see System Variable Differences Between MariaDB and MySQL - Unmaintained Series
For unmaintained versions, see Function Differences Between MariaDB and MySQL - Unmaintained Series
(In MariaDB 5.2 and later. Disabled in MariaDB 5.5 only.)
(In MariaDB 5.2 and later)
in MariaDB 10.0 and later.
in MariaDB 10.0 and later.
in MariaDB 10.0 and later.
(In MariaDB 5.5 and later, removed in 10.6)
(In MariaDB 10.0, removed in 10.6)
— new in 10.0
for InnoDB asynchronous IO subsystem on Windows.
Indexes for the engine are faster. According to a simple test, 24% faster on INSERT for integer index and 60% faster for index on a CHAR(20) column. Fixed in MariaDB 5.5 and MySQL 5.7.
for MyISAM. Can speed up MyISAM tables with up to 4x — new in 5.2
for MyISAM and Aria. This can greatly improve shutdown time (from hours to minutes) if using a lot of MyISAM/Aria tables with delayed keys — new in 10.0.13
is faster.
We improved the performance of character set conversions (and removed conversions when they were not really needed). Overall speed improvement is 1-5 % (according to sql-bench) but can be higher for big result sets with all characters between 0x00-0x7f.
and even better in . This allows MariaDB to run with 200,000+ connections and with a notable speed improvement when using many connections.
Several speed improvements when a client connects to MariaDB. Many of the improvements were done in MariaDB 10.1 and MariaDB 10.2.
There are some improvements to the DBUG code to make its execution faster when debug is compiled in but not used.
Our use of the Aria storage engine enables faster complex queries (queries which normally use disk-based temporary tables). The storage engine is used for internal temporary tables, which should give a speedup when doing complex selects. Aria is usually faster for temporary tables when compared to MyISAM because Aria caches row data in memory and normally doesn't have to write the temporary rows to disk. The test suite has been extended and now runs much faster than before, even though it tests more things.
The is now the default on Unix-like systems. This represents a major change to authentication in MariaDB — new in 10.4
Support introduced for Optimizer Trace, which provides detailed information on how the Optimizer processes queries. To enable Optimizer Trace, set the system variable — new in 10.4
The MariaDB SQL/PL stored procedure dialect (enabled with sql_mode=ORACLE) now supports Oracle style packages. Support for the following statements are available: , , , , , — new in 10.3
Automatic collection of — new in 10.4
Support for the use of parentheses (brackets) for specifying precedence in the ordering of execution for statements and , (including the use of , , operations) — new in 10.4
Support for added to local stored procedure variables. — new in 10.3
Support added for functions — new in 10.3
Oracle compatible function is available — new in 10.3
Oracle compatible SEQUENCE support is provided — new in 10.3
Support for added to variables — new in 10.3
Support for added to stored routine parameters — new in 10.3
with parameters are now supported — new in 10.3
are now supported — new in 10.3
is now available for InnoDB — new in 10.3
are supported — new in 10.2
Number of supported decimals in has increased from 30 to 38 — new in 10.2
— new in 10.2
New statement. WITH is a common table expression that allows one to refer to a subquery expression many times in a query — new in 10.2
— new in 10.2
, including DEFAULT for BLOB and TEXT — new in 10.2
Added catchall for list partitions — new in 10.2
Oracle-style statement — new in 10.2
Several new — new in 10.2
— new in 5.2
— new in 5.3
— new in 5.2
— new in 5.3,
— new in 10.0.5,
— new in 5.2
— new in 5.2
— new in 5.2
. This makes replication notably faster! — new in 5.3
Added --rewrite-db option to change the used database — new in 5.2
for and — new in 5.3
Faster — new in 5.3
and faster calls — new in 5.3
support — new in 5.3
— new in 5.3
— new in 10.0
— new in 10.0
gives the EXPLAIN plan for a query running in another thread. — new in 10.0
— new in 10.0
(including ) — new in 10.0
— new in 10.0
MariaDB than MySQL.
All bugs and are public.
MariaDB is developed by the community in true open source spirit.
This page is licensed: CC BY-SA / Gnu FDL