Tuesday, 4 August 2026

30 Years of MySQL: Version History and Feature Evolution

If you’ve used the internet at all over the last twenty-five or thirty years, you’ve almost certainly used software powered by MySQL. WordPress, YouTube, early Facebook, and countless web applications have used it to store their data.

It didn't start as a big corporate project. Back in 1995, two Swedish developers built it because they needed a simple, fast database for small projects. Over three decades, three different corporate owners, and a major split in the open-source community, MySQL is still around and getting updated.

Here is a look at how MySQL went from version 1.0 to where it is today.

1995–2005: The Early Years
Michael "Monty" Widenius and David Axmark released MySQL 1.0 in 1995. Their goal wasn't to build something to replace complex commercial databases like Oracle or DB2. They just wanted something fast, simple, and free. That made it a popular choice for early websites that needed a basic database without a high price tag.

MySQL 3.23 (2001)
Version 3.23 was the first release that felt fully ready for serious use. It came with two different storage engines: MyISAM for quick reads and InnoDB for handling transactions securely. It also brought replication, which let developers copy data across multiple servers so websites could handle more traffic.
MySQL 4.0 and 4.1 (2003–2004)
    4.0 (2003): Added query caching and UNION statements to improve speed and SQL support.
    4.1 (2004): Added subqueries, prepared statements, and better character sets, making it much easier for developers to build real applications without using messy workarounds.

MySQL 5.0 (2005)
This release added features that traditional database administrators expected, such as stored procedures, triggers, views, and cursors. This allowed teams to run logic directly inside the database itself.

2008–2009: Sun Microsystems
By 2008, MySQL had grown so large that Sun Microsystems bought the company behind it for about $1 billion. This gave MySQL corporate backing and brought it into larger company environments.

MySQL 5.1 (2008):
This version brought table partitioning, an event scheduler, and a plugin API. Table partitioning was especially helpful because it allowed people to break up huge tables into manageable pieces without breaking their applications.

2010–2015: Oracle Takes Over
Sun didn't own MySQL for long. In 2010, Oracle acquired Sun.
Many people in the open-source community were worried that Oracle would slow down development on MySQL to protect its paid database products. In fact, Monty Widenius started a separate database called MariaDB around this time just in case. But Oracle ended up continuing to develop and fund MySQL.

MySQL 5.5 (2010)

Oracle made InnoDB the default storage engine, replacing MyISAM. This made sense because most production systems were already using InnoDB for its reliability and safety during system crashes.

MySQL 5.6 (2013)
This release focused on performance. It included a better query optimizer, full-text search for InnoDB, and a Memcached API so developers could do quick key-value lookups without extra software.

MySQL 5.7 (2015)
The biggest feature in 5.7 was support for native JSON data. This meant developers could store unstructured JSON documents right alongside standard tables, reducing the need to run a separate NoSQL database like MongoDB.

2018: MySQL 8.0
Instead of releasing a version 6 or 7, Oracle jumped straight to MySQL 8.0 in 2018. It was a large update that included:
    Common Table Expressions (CTEs) and Window Functions to make complex reporting queries easier to write.
    Atomic DDL, which meant database structural changes either completed entirely or rolled back cleanly if something broke.
    Better security roles and an improved transactional data dictionary.

2024–Present: The New Release Model and AI Features
In 2024, Oracle changed how they release MySQL. They split updates into two types:
    Long-Term Support (LTS): Stable versions meant for production systems where you don't want unexpected changes.
    Innovation Releases: Quarterly releases that bring new features more quickly.

MySQL 8.4 LTS (2024)
This was the first official Long-Term Support release under the new model, giving companies a stable version they can run for years without major changes.

MySQL 9.x Innovation & MySQL 9.7 LTS (2024–2026)

Throughout 2024 and 2025, the 9.x Innovation releases introduced modern capabilities, including a native VECTOR data type for AI embeddings and similarity search.

In April 2026, Oracle released MySQL 9.7 LTS, marking the next long-term support milestone after 8.4. Rather than just being a maintenance bump, 9.7 brought several features down into the free Community Edition that used to be paid Enterprise exclusives:

  • Hypergraph Optimizer: A rewritten query optimizer that handles complex joins and query execution plans much better.

  • JSON Duality Views: Allows developers to insert, update, or read data as JSON documents while storing it as relational tables.

  • OpenTelemetry Support: Built-in observability metrics and tracing so operations teams can monitor database performance using standard tools.

  • Replication Improvements: Added detailed statistics on replication lag and automatic cluster eviction for unhealthy nodes to keep high-availability setups reliable.

MySQL Major & Minor Release History

Major VersionSeries / Track / Model TypeGeneral Availability (GA) DateLatest Minor VersionLatest Release DateEnd of Support (EOL)
MySQL 3.19EarlyLate 19963.19.51997Legacy
MySQL 3.20EarlyJanuary 19973.20.32a1997Legacy
MySQL 3.21Early19983.21.331998Legacy
MySQL 3.22Early19983.22.321999Legacy
MySQL 3.23EarlyJanuary 22, 20013.23.58December 2003Legacy
MySQL 4.0MajorMarch 20034.0.30March 2007December 2008
MySQL 4.1MajorOctober 20044.1.25November 2007December 2009
MySQL 5.0MajorOctober 20055.0.96March 2012December 2011
MySQL 5.1Major / Retrospective LTSNovember 14, 20085.1.73December 3, 2013December 2013
MySQL 5.5Major / Retrospective LTSDecember 3, 20105.5.62October 22, 2018December 2018
MySQL 5.6Major / Retrospective LTSFebruary 5, 20135.6.51January 20, 2021February 2021
MySQL 5.7Major / Retrospective LTSOctober 21, 20155.7.44October 25, 2023October 2023
MySQL 8.0Major (Pre-LTS Model)April 19, 20188.0.46April 21, 2026April 2026
MySQL 8.1InnovationJuly 18, 20238.1.0July 18, 2023October 2023
MySQL 8.2InnovationOctober 25, 20238.2.0October 25, 2023January 2024
MySQL 8.3InnovationJanuary 16, 20248.3.0January 16, 2024April 2024
MySQL 8.4Long-Term Support (LTS)April 30, 20248.4.11July 28, 2026April 2032
MySQL 9.0InnovationJuly 1, 20249.0.1July 23, 2024October 2024
MySQL 9.1InnovationOctober 15, 20249.1.0October 15, 2024January 2025
MySQL 9.2InnovationJanuary 21, 20259.2.0January 21, 2025April 2025
MySQL 9.3InnovationApril 15, 20259.3.0April 15, 2025July 2025
MySQL 9.4InnovationJuly 22, 20259.4.0July 22, 2025October 2025
MySQL 9.5InnovationOctober 21, 20259.5.0October 21, 2025January 2026
MySQL 9.6InnovationJanuary 20, 20269.6.0January 20, 2026April 2026
MySQL 9.7Long-Term Support (LTS)April 21, 20269.7.2July 28, 2026April 2034
 


No comments:

Post a Comment

Note: only a member of this blog may post a comment.