← Back to blogYouTube Video

Published February 18, 2026

The fall (and fall) of MySQL

Can't play the video or having issues? Here's the direct link.

Summary

I explain why MySQL is declining and how I recommend moving off it, with MariaDB for existing projects and Postgres for new ones. I argue that Oracle keeps MySQL's open-source repo mostly for show—zero open pull requests versus MariaDB's 270—while locking key features like vector search and parallel query execution behind the paid enterprise edition, and that MySQL's commit activity is falling while each release gets slower and more bloated. I cite sysbench comparisons showing MariaDB outperforming MySQL, and my take is simple: migrate existing MySQL projects to MariaDB because it preserves backwards compatibility in 99% of cases, and choose Postgres for anything new.

Key takeaways

  • Don't contribute to MySQL's open-source repo; Oracle can fold your work into its paid edition without giving you credit.
  • If you already run MySQL, migrate to MariaDB—it maintains backwards compatibility, so most projects need no code changes.
  • For new projects, choose Postgres as the default industry-standard database.
  • Treat locked enterprise features like vector search and parallel query execution as a sign that the free edition is deliberately limited.
  • Check pull request and commit activity before trusting an open-source database's health.
  • Use sysbench to benchmark database versions instead of assuming newer MySQL is faster.

Description

Let's face it, MySQL has been on a downtrend for a long time now. In this video, I'm going to go over a bit of a history of MySQL, why it's declining now, and what we can do about it to migrate our projects to a different database system. I'll discuss the migration options we have and how to implement them, and why you should even migrate in the first place.

Transcript

If you're still using MySQL in 2026, you're probably going to want to switch to a different, better option. In this video, we're going to talk about the fall of MySQL. We're going to talk about why it's no longer being used so much, and what you can do about it, and how you can switch to a better database option. So first of all, let's talk about the closed-source nature of MySQL. So, as you might already know, there is a free open-source version of MySQL Server over here on GitHub, but this is mostly just for show, all right? Oracle, the organization that is developing MySQL, keeps both a free open-source version and a paid enterprise closed-source version. And you can probably imagine the free version over here doesn't receive as much support, as much development, as much time and attention as the paid version, because the paid version is where Oracle makes all of its money, right? They're not going to make money from this free open-source software. They're going to make money by selling their paid enterprise solutions, right? And so this free version always ends up taking the backseat when it comes to new features, when it comes to development, bug fixes, support, and all those things, right? And if you want to see how much open-source development a project is receiving, just go over to the pull requests tab over here. You can see that MySQL has zero pull requests over here. Whereas if I open up the GitHub repo for MariaDB, which is the open-source version, the open-source fork of MySQL, you'll see that we have 270 open pull requests over here. And that's a huge difference, right? And that's the difference between an open-source project that's only there for show and isn't receiving any proper development, and an open-source project that's actually open source and people are actually contributing to it and developing it. And even if you try to contribute to the MySQL open-source server over here by submitting some pull request, you're not gonna have a very good experience most of the time. What happens is you submit a PR over here, and then usually you're not even gonna get reviewed, or your pull request isn't even going to receive much attention, right? And it's probably not going to get accepted. But even if it was accepted, you most likely won't even get any credit for your contributions because Oracle is just going to implement your features in their closed-source MySQL version, right? They're going to integrate your code, your contributions to that, and you're not going to receive any credit for it. So there's really no point in even contributing to the open-source MySQL version, especially when things like MariaDB already exist, right? And also another problem we have is that the best features of MySQL are already locked behind their paid version. Things like vector search, things like parallel query execution, I'll explain what that means, are not available in the free version of MySQL. They're only available in the paid enterprise version, and that sucks because vector search is extremely important, especially for things like AI, right? Like, you cannot develop AI models without having access to vector math and vector search. And in today's day and age, if you don't have access to a vector database, then I don't know what to say. You're already behind. Now, let's talk about parallel query execution. I feel like I should explain this real quick so you guys know what this even means, and then you can decide whether this is a trade-off you're willing to accept or not, right? So there's two basic types of queries over here that we're going to discuss, right? There's concurrent queries and there's parallel queries. And concurrent is where multiple users are running multiple queries. And most databases already support this, right? You can have multiple queries running for multiple users, but every single query is only using one CPU core. That's the difference between concurrent and parallel queries. So when it comes to parallel queries, you basically have one query that's using multiple CPU cores to finish executing faster. And this may or may not be a trade-off you're willing to accept, because you may not be at the scale required where something like this, an optimization like this, becomes relevant to your company or your product, right? But this is still a very important feature to have, and the free version of MySQL doesn't support it, but the paid version does. And since we know that Oracle has the technical expertise to develop such a feature because it already exists in their paid version of MySQL, it makes zero sense for them to not have it in the free version, right? The only reason they would not implement it in the free version is because they're trying to lock you in into a paid enterprise solution. And by all means, you can do that, but free open-source versions of this exact same feature already exist, and they're much better than the paid versions that you're going to get from Oracle. Now, while we're at it, let's also talk about the number of commits that MySQL is actually receiving. Look at this chart over here, and this is coming straight from GitHub, right? You'll see that the number of commits are actually going down and down and down. Like, if I just take a picture of this and put it over here, you can see that the commits are actually going down, down, down, down, down, right? What does that mean? It means that this MySQL Server repository is not receiving any development at all, right? Development is declining. New features are not being developed. It's just a mess, right? It is a dying product, and you do not want to be stuck with using a dying product. And as if that was not enough, MySQL is also just becoming slower and more bloated with each new feature release. And the reason this is happening is because the developers over at MySQL are developing new features in their paid versions, of course, but they're not taking the time to optimize those features and to improve performance of the entire database system. And that's obviously going to be a deal breaker. There's a very interesting article on this over here. I'll link the article in the description, but it basically using a tool called Sysbench, which is a program that you can use to compare different database systems. And this guy is basically comparing MariaDB, which is an open-source fork of MySQL, and then MySQL, right? And what he's found is MariaDB is much faster, and MySQL is just becoming slower and slower with each new version release. So, with all that being said, you probably want to know how you can switch off of MySQL and start using a better alternative to it, right? So you have two options over there. You can either use MariaDB, which is an open-source fork of MySQL, or you can use PostgreSQL. Now, if you have a new project, if you have a completely new project and you're just starting out, and you're trying to pick a database system to use, go with Postgres. It is pretty much the most popular database system there is. It's kind of like just the industry standard, and you just can't go wrong with choosing Postgres. So if you have a new project, go choose Postgres. That's what I use in pretty much all of my projects, and it's what I would recommend you to use as well. But if you are already using MySQL and you have an existing project, right, then migrating to a completely new database system is going to take a lot of work, a lot of time. So instead of doing that, you can use MariaDB, which is, again, an open-source fork of MySQL, which means it does maintain backwards compatibility with MySQL. So in 99% of cases, unless you're doing something very special with MySQL, which most of you will not be doing, you can pretty much just switch from MySQL to MariaDB and not change anything else in your code base, and it would still work perfectly fine. Because MariaDB tries to maintain backwards compatibility with MySQL. So switching between the two is extremely easy. So if you already have a project that's using MySQL, switch to MariaDB. Otherwise, if you're starting a new project, then switch to Postgres. These are the two best options that I'm going to give you for the majority of projects you're going to work in.

Share this article

Hassan Aziz pointing up

Dude, you’re at the bottom of my landing page.

Just book a call already if you’re that interested.

You scrolled all the way here.