Migrating to MariaBD from MySQL

As of 4th July 2021, all our cloud-hosted customer’s MIDAS databases have been migrated across from MySQL to MariaDB.

MariaDB What is MariaDB?

MariaDB is a community-developed “fork” of the popular MySQL database engine.

It was created by one of the original founders of MySQL, who forked it over concerns surrounding MySQL’s acquisition by Oracle Corporation in 2009. These concerns centered around rumors that Oracle were considering killing off MySQL to prevent competition with their own “Oracle” database. In the end, that didn’t actually happen and MySQL continues to remain available. But MariaDB continues to gain in popularity year on year, and has a number of advantages over MySQL.

Why migrate from MySQL to MariaDB?

  • MariaDB offers improved performance over MySQL in many scenarios.
  • MariaDB is community-driven, whereas MySQL is owned and developed by Oracle Corporation.
  • MariaDB has 268 contributors vs 83 contributors to MySQL *
  • MariaDB is arguably in more active development. (MariaDB has 193,318 code commits – the latest was today, MySQL has 163,534 – the latest was 3 months ago *)
  • MariaDB continues to gain in popularity.

* correct at time of writing

Now, we’ve been thoroughly testing MariaDB in our MIDAS development environment for well over a year now. In fact, it’s now become our “preferred” database engine over MySQL. We now only use MySQL for testing purposes. Because we now develop primarily using MariaDB, it made sense to move cloud-hosted customers over to this database engine too.

Will I notice any difference?

Our cloud-hosted customers may notice small performance improvements when performing certain operations in their online booking system. Other than that customers shouldn’t notice any other obvious changes.

That doesn’t mean that there aren’t any additional benefits to MariaDB though! One of the things we’ve now been able to do in to MariaDB is implement “data-at-rest” encryption.

Data-at-rest encryption

When it comes to encrypting data send over the internet, there are broadly two different types of encryption; encryption in transit, and encryption at rest.

Encryption in transit deals with the secure transmission of data between your browser and a server. For example, if you submit a form on a web page, the data you entered needs to be transmitted (or “sent”) to a server. If the form was on a web page severed from a URL beginning “http://”, the data is transmitted unencrypted to the sever. This means that they data you’re submitting could potentially be intercepted and read during transit.

A form submitted on a website accessed over httpS, with correctly configured security certificates, will mean than the data will be encrypted in transit to the server.

All of our cloud-hosted MIDAS systems are accessible over secure https only. We support the latest standards and protocols (including TLS 1.3), and disallow older/obsolete/insecure protocols (like SSL 2/3, and TLS 1.0/1.1). If you’re interested, you can view our A+ rating on SSL Labs.

Encryption at rest on the other hand deals with how data is actually stored on a server (i.e. on a physical disk). Data may be encrypted in transit, yet not encrypted at rest, or vice versa.

The most secure systems are those which encrypt data both in transit AND at rest.

As of 4th July 2021, we’re pleased to announce that all our cloud hosted customer’s databases are also now encrypted at rest too!

What about self-hosted customers?

This month’s migration from MySQL to MariaDB affects cloud-hosted customers only.

Self-hosted customers have a choice between either using MySQL or MariaDB for their MIDAS database.

We have no plans to discontinue support for MySQL in the foreseeable future, and will continue to provide support to customers who are using MySQL for their MIDAS booking systems.