Some 15 years ago, when Oracle acquired Sun, and hence MySQL, there was a lot of talk on the internet over when Oracle was going to “Kill MySQL”.  Multiple theories were circled around, ranging from killing MySQL altogether, so there is less competition to proprietary Oracle, or just killing it as an open source project, leaving “MySQL Enterprise” as the only option.  Spreading such rumors was good business for MariaDB and PostgreSQL as well as other lesser competitors so they were spread very wide. 

In reality, though, Oracle ended up being quite a good steward of MySQL. The MySQL team was left mostly alone, with MySQL old-timer Tomas Ulin largely calling the shots. MySQL has become more stable and secure. A lot of technical debt was fixed, and a lot of features modern developers wanted were added, such as JSON support and support for advanced SQL standard features.

While there was “MySQL Enterprise,” it really was focused on the features enterprises would need and developers would care little about, such as Pluggable Authentication, Auditing, Firewalling, etc. While there was also a proprietary GUI, Monitoring, and Backup tool (e.g., MySQL Enterprise Monitor), there were also plenty of open source and proprietary competitors, so it did not create huge lock-in.

During this time, I often found myself defending Oracle from what many assumed was treating MySQL badly because…. They are Oracle.

I think during all this time, Oracle was using this well-known formula for success in open source: “Conversion should never compromise adoption.”

Things have changed, though, in recent years with the introduction of “MySQL Heatwave”—Oracle’s MySQL Cloud Database. Heatwave includes a number of features that are not available in MySQL Community or MySQL Enterprise, such as acceleration of analytical queries or ML functionality. 

When it comes to “analytical queries,” it is particularly problematic as MySQL does not even have parallel query execution. At a time when CPUs with hundreds of cores are coming to market, those cores are not getting significantly faster, which is increasingly limiting performance. This does not just apply to queries coming from analytical applications but also simple “group by” queries common in operational applications. Note: MySQL 8 does have some parallelization support for DDLs but not for queries. 

Could this have something to do with giving people more reason to embrace MySQL Heatwave? Or, rather move to PostgreSQL or adopt Clickhouse?

Vector Search is another area where open source MySQL lacks. While every other major open source database has added support for Vector Search functionality, and MariaDB is working on it, having it as a cloud-only MySQL Heatwave Feature in the MySQL ecosystem is unfortunate, to say the least.

Then there is perhaps the most bizarre choice—Javascript Support has been released as a MySQL Enterprise-only feature, while I think MySQL should do everything to win the hearts and minds of Javascript developers, many of whom already prefer simpler databases such as MongoDB.

I think all of these break the golden rule mentioned above as they surely restrict MySQL adoption, both from the standpoint of those specific features and from fears about what this seeming policy change means for MySQL’s future.

If that is not enough, MySQL seems to suffer from years of neglect in the performance engineering department with significant performance reduction on simple single thread workloads compared to MySQL 5.6. You could claim features cost performance, but MariaDB was able to significantly reduce performance degradation and PostgreSQL even improved performance while adding new features.

Obviously, I am not privy to Oracle management team conversations, and I can’t say whether this is ignorance or ill intent, but such product decisions over the last few years are surely not good for MySQL adoption at a time when PostgreSQL has been winning hearts and minds in strides and have significantly closed the adoption gap with MySQL according to DB-Engines, and is already the most popular open source relational database according to StackOverflow Developer Survey.

In any case, unless Oracle turns its attention to the needs modern developers have from a relational database, it will be killing it, if not through action, then through inaction!

Subscribe
7 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Eero Teerikorpi

Peter, since you so clearly see what areas of improvements MySQL would benefit, why doesn’t Percona take on those as part of the Percona Server future development?

Viacheslav Gavrilin

Does MySQL-Percona depend on MySQL-Oracle code? We have also MariaDB. Luckilly Oracle did not buy Postgres:)

Eero Teerikorpi

Understood and appreciated, but if Oracle leaves MySQL core version completely behind, maybe it would be time for ‘New MySQL’, own independent fork to keep the great legacy going forward? Percona Server for MySQL is a good starting point. MariaDB has deviated too far from the original MySQL and has its own set of other problems to be consider natural continuation for MySQL.

Dathan Pattishall

mySQL is such a great piece of technology. Working with Postgres from an admin standpoint has been a challenge to say the least. I do hope Oracle reinvests in the community, merges the forks, focuses on performance again and keeps the crown as the best database system ever. Lot of my professional career has been focused on mySQL. I personally would hate to see it be left by the waste side. To Heikki and Monty, I tip my hat to you.

Nils Meyer

What are the challenges you’ve been dealing with? My major pain point is upgrading major versions, that’s easier in MySQL/MariaDB although judging from other articles on this very blog people are just as reluctant to do major upgrades.

Postgres always seems to add something nice in a new version whilst I don’t really see many things to be excited about in MySQL. Oracle seems to be in a bit of a bind, adding features that are mostly interesting to Enterprise, not necessarily the web whilst not wanting to create an alternative to their more profitable product.

Dave Stokes

Oracle has released the last version of MySQL Workbench, 8.0.37. They are also stopping the development of MySQL Enterprise Manager (MEM). Those wishing to monitor instances with Oracle-created software must now purchase Oracle Enterprise Monitor.

Percona Monitoring and Management is still my favorite, and it is FREE. But I did like using Workbench from time to time.