Title: INSERT – Make WordPress Core

---

#  Tag Archives: INSERT

 [  ](https://profiles.wordpress.org/desrosj/) [Jonathan Desrosiers](https://profiles.wordpress.org/desrosj/)
2:28 pm _on_ December 8, 2023     
Tags: INSERT   

# 󠀁[Raising the minimum version of MySQL required in WordPress 6.5](https://make.wordpress.org/core/2023/12/08/raising-the-minimum-version-of-mysql-required-in-wordpress-6-5/)󠁿

With the release of WordPress 3.2 in 2011, the minimum version of MySQLMySQL MySQL
is a relational database management system. A database is a structured collection
of data where content, configuration and other options are stored. [https://www.mysql.com](https://www.mysql.com/)
required to run the software was [updated](https://core.trac.wordpress.org/changeset/17523)
from `4.1.2` to `5.0`. While the [_recommended_](https://wordpress.org/about/requirements/)
version of MySQL (or MariaDB) is frequently updated to suggest using only officially
supported versions, the same has not happened for the _required _version and this
minimum has remained the same since.

MySQL 5.0 was initially made generally available in 2005 and reached its end of 
life (EOL) in January of 2012, making it unsupported and insecure for over 12 years.
This is extremely old and this requirement is being raised.

**In WordPress 6.5 (as of [[57173]](https://core.trac.wordpress.org/changeset/57173)),
the minimum required version of MySQL will be raised from 5.0 to 5.5.5. **

## Why version 5.5?

This sounds like a big jump and appears to discontinue support for 5 versions. However,
MySQL versions `5.2`, `5.3`, and `5.4` were never officially released. Here are 
the current percentages of sites using each MySQL version for all WordPress sites
according to the [WordPress.org Stats page](https://wordpress.org/about/stats/) (
the EOL date for each release is noted in parenthesis):

 * **5.0: **0.13% (January 2012)
 * **5.1:** 0.27% (December 2013)
 * **5.5:** 14.54% (December 2018)
 * **5.6:** 4.51% (February 2021)
 * **5.7:** 33.01% (October 2023)
 * **8.0:** 11.67% (April 2026)

**Note: **This only includes versions released prior to the MySQL Innovation/Long-
Term Support versioning strategy that was [recently announced](https://dev.mysql.com/blog-archive/introducing-mysql-innovation-and-long-term-support-lts-versions/).

Only 0.4% of all sites are running MySQL < version `5.5`. Additionally, 80% of those
sites are running a version of WordPress greater than 2 years old (6.1 or earlier).
Approximately 15% of all sites are running MySQL `5.5`.

Even though the EOL date for version `5.5` has also long passed, the level of usage
in the wild is far too high to consider using a required minimum higher than that
at this time.

## Why 5.5.5 specifically and not just 5.5?

Of all sites currently running MySQL 5.5, over 85% of them are running the `5.5.5`
point releaseMinor Release A set of releases or versions having the same minor version
number may be collectively referred to as .x , for example version 5.2.x to refer
to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) 
branch of that software. Minor Releases often make improvements to existing features
and functionality. with no usage of `5.5.0-5.5.4` being reported.

Using `5.5.5` also ensures two things:

 * The presence of `utf8mb4` support (added in MySQL 5.5.3)
 * `InnoDB` is the default storage engine instead of `MyISAM` (added in 5.5.5).

While WordPress is perfectly capable of using other character sets, `utf8mb4` is
the _preferred_ default, falling back to `utf8` when it’s unavailable.

## How does this affect MariaDB support?

In short, it doesn’t. The MariaDB project used a numbering strategy identical to
MySQLs through version 5.5. While MySQL 5.2, 5.3, and 5.4 were not released, MariaDB
5.2 and 5.3 were. This change will effectively drop support for those two releases
of MariaDB, These versions reached EOL in 2010 and 2011, respectively. There is 
currently no reported usage of these two versions in the wild.

## What about new versions of MySQL or MariaDB?

There will continue to be no upper limit to the version of MySQL or MariaDB a site
owner is allowed to run. As new versions are released, contributors work to evaluate
and address any compatibility issues when and if they are discovered.

With MySQL 8.1 and MariaDB 10.0, [both](https://dev.mysql.com/blog-archive/introducing-mysql-innovation-and-long-term-support-lts-versions/)
[projects](https://mariadb.com/kb/en/mariadb-server-release-dates/) moved towards
a release model with both short and long term releases. A larger discussion needs
to take place focused on how this concept fits within the project’s commitment to
backwards compatibility and version support policies. However, this post is not 
for that discussion. Keep an eye on this blogblog (versus network, site) for a separate
post outlining and contextualizing those related challenges.

## Wait, Site Health already says 5.5 is the minimum required version…

That’s right! Since the [day it was merged into Core](https://github.com/WordPress/wordpress-develop/commit/dad6b61cfb6fa3016f5f469e4b2c6a8b39b6f046#diff-cef20a787b7d72d8134219c1e237f97bb3ac8eb52698e32a12b56e23a1060a2cR16)
for release in WordPress 5.2, Site Health has reported the minimum required version
as `5.5`. Because the Site Health feature was originally a pluginPlugin A plugin
is a piece of software containing a group of functions that can be added to a WordPress
website. They can extend functionality or add new features to your WordPress websites.
WordPress plugins are written in the PHP programming language and integrate seamlessly
with WordPress. These can be free in the WordPress.org Plugin Directory [https://wordpress.org/plugins/](https://wordpress.org/plugins/)
or can be cost-based plugin from a third-party., it leaned hard on having strong
recommendations from the start. Because MySQL version `5.5.3` added support for `
utf8mb4`, the decision was made to present `5.5` as the minimum required version
instead of `5.0`.

## When can/will the required version be raised to 󠀁[#INSERT](https://make.wordpress.org/core/tag/insert/)󠁿 SOME VERSION NUMBER HERE#?

Database software should be treated the same as any other: the most recent publicly
available, supported version should always be used whenever possible. Using unsupported
or EOL versions of software can leave you and your site susceptible to bugs and 
security vulnerabilities.

That said, WordPress is steadfast in its commitment to backwards compatibility. 
Older versions of the software WordPress depends on such as PHPPHP The web scripting
language in which WordPress is primarily architected. WordPress requires PHP 7.4
or higher and MySQL or MariaDB will continue to be supported when a sizable number
of sites remain on those versions. Historically, the [5% baseline has been used when considering adjustments to the PHP support policy](https://make.wordpress.org/core/2023/07/05/dropping-support-for-php-5/).
The same baseline percentage seems reasonable as a starting point to begin future
discussions about further changes to the minimum required versions of MySQL and 
MariaDB.

**While the minimum required version is changing in WordPress 6.5, WordPress continues
to recommend using **[**MySQL**](https://www.mysql.com/)** version 5.7 or greater
OR **[**MariaDB**](https://mariadb.org/)** version 10.4 or greater.**

## Summary

As a community, we frequently encourage site owners to run actively supported versions
of PHP. Let’s advocate more strongly for the same with MySQL and MariaDB. By working
together to lower the usage numbers of any versions that have reached their end 
of life, the potential to use new features to further improve WordPress can be unlocked,
all while making the overall ecosystem more healthy and secure.

_Props [@jorbin](https://profiles.wordpress.org/jorbin/), [@chanthaboune](https://profiles.wordpress.org/chanthaboune/),
[@johnbillion](https://profiles.wordpress.org/johnbillion/), and [@sergeybiryukov](https://profiles.wordpress.org/sergeybiryukov/)
for pre-publish review._