What Is MariaDB?
MariaDB is a relational database management system (RDBMS) that is a drop-in replacement for MySQL. It has been developed by a strong community as an open-source database management system.
It offers all the features of MySQL, with the same interface and compatible libraries, along with additional features, improved performance, fewer bugs, and better licensing.
History of MySQL and MariaDB
MySQL was the first widely popular Open Source database. It was invented in the early 1990s by Michael Widenius and was a great success.
In 2008, the company that had been the lead development team behind MySQL was purchased by Sun Microsystems. Sun was purchased a year later by Oracle. MySQL continues to exist as Open Source software, but there is also now a closed source Enterprise edition available.
The Start of MariaDB
MariaDB was created by first taking a copy of MySQL. Beyond that, MariaDB has kept up with changes to MySQL to make sure they stay compatible. According to official sources, a large chunk of developers from the original MySQL team is still working on MariaDB.
MariaDB is fully compatible with a “drop-in” replacement to MySQL. Despite the funky name, I can assure you it’s a decent choice to go with.
The MariaDB Foundation
The MariaDB foundation was created in 2012 to make sure the software remains a true Open Source project and has strong community support. Foundation sponsors include giants like IBM and Microsoft.
Newer Version of MySQL?
Unsatisfied with the direction of the software, many of the original development team, including the inventor, created a fork of the Open Source version of MySQL. They began enhancing it and adding new features, naming the new version MariaDB.
It’s often common for developers from sister companies to work on related projects. Not only is this due to work-flow similarities, but the infrastructure of the projects.
Similarities between MySQL and MariaDB
If you weren’t looking closely, you would think they were the same software. In fact, they are mostly the same software.
That means you can change an application’s database from MySQL to MariaDB without changing anything else, and it will still work. But once you change it, you can start taking advantage of the improvements.
Do the Same Softwares Work forBoth?
Most software that nominally requires a MySQL database will work equally well with MariaDB. WordPress and Magento will handle it without blinking.
Server Operating Systems
When taking compatibility into account, both MariaDB and MySQL are compatible with the following servers:
As we repeatedly mentioned throughout this page, if you decide to go with another hosting provider, ensure the server OS is compatible.
Both MySQL and MariaDB support exactly the same programming languages. This is no surprise due to the mutual development force. Some of these languages include C, C#, C++, Java, PHP, Python and Ruby – to name a few.
All together, they support a total of 19 programming languages, including the most popular ones to date.
Due to the nature of both pieces of software stacks being open-source, they have a brilliant following. Similarly to most open-source projects, both of the above have active online communities of advocates, developers, and users.
Having this level of presence allows you to really utilize the general knowledge on offer when using either MariaDB or MySQL.
Migration from MySQL to Maria DB
Migrating from MySQL to MariaDB is easy, but going the other way can be very difficult. If you think you might someday need to upgrade to MySQL Enterprise Edition, you should think carefully about burning your bridges.
Nevertheless, have a database programming expert by your side, whether it’s a consultant or a development partner. If you have a quality technical team already, consider it a stress-free process.
Differences Between MySQL and MariaDB
The MariaDB development team wanted to improve as much about MySQL as possible without breaking drop-in compatibility. They’ve added features, sped things up, and even improved the licensing.
MariaDB supports more storage engines than MySQL. Some might have special advantages for your application, or you might just like one better than the usual options.
The main differences include:
- Ease of use
- Additional features, including More Precise Time, and NoSQL features
- Fewer bugs
- Fewer incorrect warnings
- Better licensing
We will dig into each of these differences below. Some functions in MySQL aren’t the same in MariaDB. They aren’t ones most developers would use, though.
Now, let’s look at some of the differences between the two software programs.
Ease of Use
A number of features were altered or added to make the software easier for developers to interact with. Admins can now query data about how tables and indexes are used. This allows for a better understanding of server activity.
Some types of queries can take a very long time to complete. In MySQL, there was no feedback about progress, which can lead to impatience and hasty job cancellation.
More Precise Time and NoSQL
More Precise Time MySQL allows for DATETIME and related values to be specified to the second, while MariaDB can specify time value to the microsecond.
Furthermore, MariaDB allows developers to write directly to the underlying datastore, skipping the SQL layer. While not recommended for most use cases, this adds the ability to store non-relational data.
MariaDB also has support for Dynamic Columns, which allows every row of a table to have a different set of virtual fields.
Speed and Performance of MariaDB
In a high-volume environment, every microsecond counts. MariaDB has made a number of improvements to speed and performance, including:
The optimizer is a utility within an RDBMS system that translates Structured Query Language commands (SQL) into instructions for the underlying storage engine. (This is mildly analogous to a compiler or interpreter.)
The MariaDB rewrote the entire Optimizer, making it run much faster, especially on complicated or demanding queries.
Just because a table is named in a query doesn’t mean it will actually need to be accessed to provide the requested results. MariaDB analyses the query against what data is actually needed to complete the request and doesn’t include tables that are not needed.
Though not an enhancement that end-users can directly take advantage of, the MariaDB development team has greatly expanded and improved the test suite for MariaDB. This ensures new features are more reliable and contain fewer bugs when they are released.
Fewer Incorrect Warnings
Also, while not “bugs” exactly, MySQL created a number of warnings at the compiler level. These didn’t signal anything was actually going wrong with the execution of the software, but did cause a bit of annoyance for developers.
MariaDB treated compiler warnings as bugs and worked to eliminate them whenever possible.
MySQL is only mostly Open Source. The Enterprise edition contains a number of closed-source modules and enhancements. MariaDB is fully Open Source and includes features which are closed in MySQL. Both open-source versions use the GPL.
Further, libraries and other modules have been licensed in such a way that they can be used in conjunction with other closed-source software, eliminating some legal restrictions and allowing for complete flexibility in how the software is used. This applies to both MySQL Community Edition and MariaDB.
MySQL or MariaDB? Which is Best for You?
Let’s take a quick look at how MySQL and MariaDB compare on some of the basics. A handful of the below features are often enough to determine which database system you go with.
Be mindful, before committing to a hosting plan based on either.
|Easy-of-Use||Not as user-friendly||Extremely easy-to-use|
|Bugs||A few||Works to eliminate whenever possible|
Unsure what you are looking for? If this table is completely alien to you, it’s best to get some help. You may not need to hire a specialist technologist or developer.
Either way, it’s beneficial to have some form of assistance, from someone who understands your needs and uses of the proposed database manager.
Maria DB Pros and Cons
Is Maria DB the right choice for you? After reading the information above, you can see it really depends on your specific needs. Before you decide, make sure to consider the following.
Pros Over MySQL
- Fully open source database under GPL
- Highly compatible with MySQL
- Excellent performance
- Better licensing
- Improved performance
Cons of MariaDB
- Migrating back to MySQL is difficult
- No commercial-grade option
- A few compatibility issues
Requirements and Considerations
Any web host that supports MySQL should support MariaDB, but you should check with the host directly if you are planning to make a switch on a live application.
Most sites have a lot more support information for MySQL than MariaDB, but the same information usually applies to both.
These are the main host prerequisites and recommended considerations for adopting MariaDB:
- Ensure your web hosting server is compatible.
- You’re currently using MySQL, or it fits your plan.
- You don’t require commercial-grade support.
- Post 90s machine (no specific hardware requirements).
- If considering migrating, ask yourself: Do I need to?
Before switching, look over the MariaDB vs. MySQL comparison page to see if any concerns might affect you. Keep any existing MySQL databases in place for a while, in case you have to roll back. Most MySQL users shouldn’t encounter any migration problems.
My Top Three Hosts for MariaDB
The tool above will help you determine which host is the right one for your needs, but if you aren’t sure where to start, consider the three hosts below.
A2 Hosting supports many database servers, including MariaDB. The Webuzo tool allows 1-click setup of the software.
Manual and automatic backup setups are available, and Server Rewind lets you restore a database to a known good state. The Turbo Server option is available if you need the fastest web hosting possible. Phone, chat, and email support is always available.
LiquidWeb sells managed web hosting plans, so you’ll get your database set up properly. The site gives detailed information on setting up MariaDB on its servers, showing it takes the software seriously.
It gives a 100% uptime guarantee and around-the-clock support with guaranteed initial response times. Several backup plans are available.
GreenGeeks calls MariaDB “the fastest DB server” when describing its platform. Support is good, though phone support isn’t 24/7.
RAID-10 SSD storage means you’ll get fast database access, and the Cloudflare CDN is available at no extra cost. The scalable hosting platform lets your site grow with your business. Hosting is Linux-only.
Other features in SQL
MariaDB Frequently Asked Questions
- What is MariaDB?
MariaDB is a drop-in replacement for MySQL, the world’s most popular open-source relational database management system.
Compared to MySQL, MariaDB offers additional features, better licensing, and a completely open-source and community-driven development model.
- Why was MariaDB created?
For years, MySQL has been the industry-standard open source database management system and has been installed on virtually all standard Linux systems. However, on January 27, 2010, the company that sponsored MySQL development was acquired by Oracle.
Fearing that Oracle’s ownership of MySQL would produce negative results in the long run, Michael “Monty” Widenius, the original developer of MySQL, created a fork of MySQL in late 2009 and named it MariaDB.
MariaDB was created to provide a new professional home for the core MySQL development team, to ensure that a free alternative to MySQL would always be available, and to ensure that MySQL development remained a community-driven process.
- Is MariaDB compatible with MySQL?
Yes, MariaDB is a drop-in replacement for MySQL. Any MySQL database can be imported directly into MariaDB and it will run as expected.
- Is MariaDB just a copy of MySQL?
No. Initially, MariaDB was forked as a copy of MySQL version 5.5. However, over time, many new features, performance enhancements, and bug fixes have been incorporates into MariaDB, all while maintaining complete compatibility with MySQL.
- How are MariaDB and MySQL different?
While an MySQL database can be dropped into MariaDB and work just fine, there are actually quite a few differences between MySQL and MariaDB.
One of the most important differences is the number of storage engines, most notably Aria, that MariaDB supports in addition to the storage engines supported by MySQL.
Another key difference is that temporal values in MariaDB can be recorded down to the microsecond while MySQL can only record seconds. MariaDB also supports a number of NoSQL commands.
In addition, development of MariaDB emphasizes a concerted effort to eliminate bugs, reduce warnings, and avoid introducing new warning and bugs.
- Is MariaDB faster than MySQL?
In benchmarked tests, MariaDB consistently outperforms MySQL. However, the difference in performance between the two database management systems isn’t that large. Both MySQL and MariaDB are extremely stable and efficient.
- What is NoSQL?
NoSQL stands for “non SQL” or “not only SQL.” It describes a database storage system that doesn’t model the table-based storage system SQL developers will be very familiar with.
In the case of MariaDB, NoSQL stands for “not only SQL.” It indicates that while MariaDB is primarily a relational database management system, it does support something called dynamic columns which allow for the storage of data in a decidedly non-relational structure.
- I already have MySQL, can I use MariaDB?
If MySQL is installed on a server, then it is theoretically possible to also install MariaDB on the same server. The two database management systems can coexist side-by-side on a single server just fine.
However, you’ll need root access to the server to install MariaDB. So, in practice, if you want to use MariaDB, you’ll need to pick a host that already supports it, or select a hosting plan that includes root access to the server so that you can install it yourself.
- How popular is MariaDB?
According to DB-Engines, as of early 2017, MariaDB is the 20th most popular database management system.
Contrast this ranking with MySQL which comes in at second place behind it’s parent company’s flagship product, Oracle.
MariaDB has a lot of ground to make up if it ever hopes to compete with MySQL. However, it is growing in popularity.
- Who uses MariaDB?
MariaDB is offered by many performance-minded web hosts as an alternative to MySQL. In addition, MariaDB is used by some very high-profile customers such as Google, WordPress.com, the Wikimedia Foundation, and Mozilla.
- Who owns MariaDB?
MariaDB is free and open-source. The copyright to the software is held by the MariaDB Foundation who offers the software under the GNU GPL license. The MariaDB Foundation is also charged with managing and coordinating ongoing development of MariaDB.
- How do I get MariaDB?
MariaDB can be installed from the command line of most Linux operating systems. For example, to install MariaDB on a server running Ubuntu, just execute the following command:
apt-get install mariadb-server.
You can also download the MariaDB source code from the MariaDB Foundation website if you need MariaDB for a Windows system or if you wish to review the source code itself.
- What’s the difference between mariadb.org and mariadb.com?
The MariaDB Foundation website can be found at mariadb.org. The MariaDB Foundation is charged with overseeing ongoing development of MariaDB.
The MariaDB Corporation is a seperate organization, but one with very close ties to the MariaDB Foundation.
The MariaDB Corporation website can be found at mariadb.com and the company is the primary sponsor of the MariaDB Foundation and the source of employment for core MariaDB developers.
Similarly to how Oracle approaches MySQL, the MariaDB Corporation offers a variety of commercial packages that add on premium features and technical support to the core MariaDB database system.
Unlike Oracle, MariaDB Corporation does not own the database system it supports. Ongoing development of the software is therefore ensured to remain in the open-source space and to continue even if MariaDB Corporation is ever shuttered.