Databases have a mystique around them, but they really don’t need to. A database stores text based information, of any kind. If you have a list of members who log into your site, that list is stored in a database. If you have an e-commerce site that lists products, information about these products is stored in a database.
There are many different kinds of databases you can use, but two industry leaders you need to know about are MySQL and MariaDB.
A lot of the time, when you’re purchasing hosting from a company, you’ll find yourself having to choose between one of these two options. This post is an attempt to go over some of the basics and help empower you to make that choice.
At CanSpace Solutions, our default for standard hosting clients is MySQL, and clients with VPS fully managed hosting solutions or dedicated servers can choose between MySQL and MariaDB based on their preference.
Of the two, MySQL came first, around 1995. It’s an open-source relational database management system (RDBMS), and works like any other relational database. What sets it apart is its popularity, as it’s probably the most used RDBMS in the world.
MariaDB is a fork of MySQL, which means that it started as an exact copy and has diverged over time. At this point in time, MariaDB still works as a direct, drop-in replacement for MySQL databases.
It might be worthwhile to mention that the two have diverged somewhat recently, and that over time, they may become more different. While the two are widely known as compatible, the MariaDB site lists numerous incompatibilities, and this list is likely to grow with time. The point is, you want to choose one, go with it, and ideally avoid having to switch back and forth.
Which is faster?
For most tasks, performance is comparable. For the curious, actual performance analyses exist online.
MariaDB does have some new features that improve performance for large databases. These include thread pool management and defragmentation within the InnoDB data store, which maximize processing efficiency. That means when a user deletes rows from an InnoDB table, the free space immediately becomes available to the operating system. MariaDB also offers engine-independent table statistics that can be used to improve performance.
MariaDB offers more options of supported storage engines than MySQL, but this versatility matters less than the simple fact of which storage engine suits your requirements.
- MariaDB supports: XtraDB, InnoDB, MariaDB ColumnStore, Aria, Archive, Blackhole, Cassandra Storage Engine, Connect, CSV, FederatedX, Memory storage engine, Merge, Mroonga, MyISAM, MyRocks, QQGraph, Sequence Storage Engine, SphinxSE, Spider, TokuDB.
- MySQL supports: InnoDB, MyISAM, Memory, CSV, Archive, Blackhole, Merge, Federated, Example.
The levels of support available for the two platforms are roughly comparable. Support for MySQL is available through Oracle, while support for MariaDB is available via the platform’s robust online community. Both offer a premier level of support that gives even more hands-on support for those with more robust needs.
Both systems offer a high level of security. MySQL includes strong encryption for tablespace data, as well as good security parameters for passwords and setting user privileges. It also ensures application security by preventing SQL injections and data corruption.
MariaDB has all of these security measures, but also some new ones, such as internal security and password check, PAM and LDAP authentication, Kerberos, and user roles.
And just so you know that it’s really hard to make a mistake, here are some users of each database:
MySQL: NASA, Tesla, Netflix, Facebook, Twitter, Zappos, Youtube, and Spotify
MariaDB: Google, Craigslist, Wikipedia, Ubuntu
Clearly, if it works for these behemoths, either database will work for you as well. Choosing one really depends on your needs and preferences.
Still unsure whether to go with MySQL or MariaDB for your VPS or dedicated server service? We’re a 100% Canadian hosting company, and we have support staff available around the clock to help with all your web hosting questions, including ones related to databases. Get in touch with us with your specific requirements, and we can make a recommendation based on these!