No release history is available yet.
What it is
MySQL is a relational database management system that stores data in tables and is commonly used by web applications, business systems, and embedded software. It uses SQL for defining schemas and querying or changing data. It supports transactions, indexes, constraints, replication, backup tooling, stored programs, and multiple storage engines, although the transactional InnoDB engine is the normal choice for modern deployments. MySQL is available in community and commercial distributions and is also offered through managed cloud database services.
History
MySQL emerged during the early growth of dynamic web applications and became widely associated with the LAMP stack. Its early appeal came from relatively simple deployment, strong read performance, and broad support from hosting providers and application frameworks. Over time it added more complete transactional behavior, stronger integrity features, improved optimizer and SQL capabilities, replication options, security enhancements, and operational tooling. Ownership and stewardship changed over its history, which led to the creation of compatible forks, most notably MariaDB. Although MySQL and its forks retain substantial common heritage, they have increasingly developed distinct features, behaviors, and administration ecosystems.
Migration notes
Migration planning should begin by identifying the exact server distribution, storage engine usage, SQL modes, character sets and collations, authentication methods, and client drivers in use. Moving from an older MySQL installation to a newer one can expose invalid legacy data, stricter validation, reserved-word conflicts, changes in default SQL behavior, deprecated features, and differences in collation sorting or case sensitivity. Character-set work is especially important: databases may contain a mix of legacy encodings, and an application, connection, table, or column can each influence how text is interpreted. Schema dumps and data exports should therefore be tested with representative multilingual and malformed data.
Moving to MySQL from another database often requires adapting dialect-specific SQL, procedural code, data types, identifier rules, quoting, pagination, upsert patterns, date and time handling, and transaction or locking assumptions. Features such as sequences, advanced constraints, partial indexes, materialized views, and richer procedural languages may not map directly from other systems. Conversely, moving away from MySQL can require replacing MySQL-specific constructs such as storage-engine options, auto-increment behavior, nonstandard grouping behavior accepted by permissive SQL modes, specific functions, full-text search details, JSON behavior, replication tooling, and dump formats.
Operational migrations also need to account for replication topology, binary logging, backup and point-in-time recovery procedures, user grants, TLS configuration, high-availability tooling, and application connection-pool behavior. Large tables require a plan for online copying or logical replication, cutover consistency, write coordination, validation, and rollback. MySQL-compatible products should not be treated as interchangeable without testing: compatibility can vary in optimizer choices, default settings, supported SQL syntax, system tables, replication semantics, and management tooling. Application-level query tests, checksum or reconciliation checks, performance testing under production-like concurrency, and a rehearsed rollback path are important parts of a safe migration.
Version support status
| Cycle | Status | Date |
|---|---|---|
| MySQL 9.7 | Supported | No support end date published |
| MySQL 9.6 | End of life | EOL 21 April 2026 |
| MySQL 9.5 | End of life | EOL 20 January 2026 |
| MySQL 9.4 | End of life | EOL 21 October 2025 |
| MySQL 9.3 | End of life | EOL 22 July 2025 |
| MySQL 9.2 | End of life | EOL 15 April 2025 |
| MySQL 9.1 | End of life | EOL 21 January 2025 |
| MySQL 9.0 | End of life | EOL 15 October 2024 |
| MySQL 8.4 | Supported | Support ends 30 April 2029 |
| MySQL 8.3 | End of life | EOL 10 April 2024 |
| MySQL 8.2 | End of life | EOL 14 December 2023 |
| MySQL 8.1 | End of life | EOL 25 October 2023 |
| MySQL 8.0 | End of life | EOL 30 April 2026 |
