What's the difference? Which one is right for you?In the world of database management systems, MySQL and MariaDB have a lot in common. Even so, many users have a clear preference for one or the other. To help you decide which one is the best fit, we’ve created an overview of the two systems and what sets them apart.
MySQL and MariaDB trace a common ancestry, with MariaDB originating as a fork of MySQL. Both are open source projects, but while MySQL was acquired by Sun Microsystems in 2009 and then Oracle in 2010, the original development team decided to go their own way with MariaDB.
Since then, MySQL and MariaDB have been worked on in parallel by separate communities with different approaches to software development. They still share many similarities, but over time each of them has evolved into a distinct choice for any organisation looking to run database applications, with associated pros and cons.
Drop in, not out
From the start, MariaDB has been designed as a drop-in replacement for MySQL. In other words, migration from MySQL to MariaDB can be accomplished with minimum effort, since compatibility has been built into MariaDB at every level. In practice this means that MariaDB can easily replace MySQL and be up and running almost instantly.
MariaDB will work exactly the same way, with binary compatibility ensuring no need to convert data and table definition (.frm) files. Client APIs, protocols and filenames are all the same, while all MySQL connectors and the ‘mysql-client’ package should also behave identically with MariaDB. All this means that in general, you shouldn’t feel like your choice is limited by technical factors.
Storage engines or database engines are the software components of the database management system used to create, read, update and delete data. A major draw of MariaDB is the increased number of ready-to-use storage engines it offers in comparison to MySQL.
Alongside the standard storage engines, third-party solutions like Aria, XtraDB, FederatedX, OQGRAPH and SphinxSE are fully integrated with MariaDB, just to name a few. Equivalents of these are also available for MySQL, but not as part of the official release. So it’s worth noting that MariaDB offers a wider choice right out of the box, especially if you have a preference for a specific storage engine.
Features and functionality
Despite their similarities, both MySQL and MariaDB boast exclusive features. Options unique to MariaDB include ‘virtual columns’ which allow columns to be automatically updated and calculated at the database layer, and ‘table elimination’ that enables queries to be resolved without accessing the relevant tables.
But don’t think that MySQL functionality has been left in the dust. It still offers some features you won’t find in MariaDB, such as the InnoDB memcached plugin for automatically storing and retrieving InnoDB table data. Ultimately, you should always ensure that any must-have functionality is available before choosing between MySQL and MariaDB.
While MySQL and MariaDB are both open source solutions, the two communities take a different approach to development. MariaDB is often presented as more open to code contributions, public discussion and feedback, as opposed to the more centrally managed MySQL. The forward-looking feature set of MariaDB is often linked to this open source commitment.
That said, MySQL is still a valid and convenient choice for many users, even if its development is arguably less transparent. MySQL benefits from the resources of Oracle to offer regular functionality and security updates, and it’s readily available in the official repositories of most Linux distros. If you’re happy with the tried and tested performance of MySQL, there’s no burning need to switch.
Revolutionary web hosting for your databases
The Fasthosts Cluster platform offers a complete package for running your database applications.Find out more
High performance and capacity with up to 120 x 1GB low-contention databases
Smart SSD storage ensures critical databases run quickly and reliably
User-friendly control panel, 24/7 support and UK data centres