Major Version Upgrade
Before you perform a major version upgrade, you should first identify the changes between the current version and the new version, and then verify that these changes do not affect how you use the MySQL database server.
As you cannot downgrade a DB system to a lower MySQL version number, you should perform a backup of the DB system before upgrading. See Creating a Manual Backup. The backup allows you to restore the DB system to the original version number before the upgrade.
Each major version of MySQL server is likely to introduce some new features and remove some deprecated features. The major changes that you should consider before upgrading are listed in the following:
Upgrading MySQL 8.0 to MySQL 8.4
MySQL 8.4 introduces some new features and removes some deprecated features as compared to MySQL 8.0.
You should be aware of these changes before upgrading your DB system from MySQL 8.0 to MySQL 8.4:
- As the
default_authentication_plugin
variable is removed in MySQL 8.4, the DB system ignores thedefault_authentication_plugin
variable in the Configuration. It always defaults tocaching_sha2_password
. You can override the default authentication method of your user accounts with theCREATE USER
andALTER USER
statements if needed. - The deprecated
mysql_native_password
authentication plugin is disabled by default. Your user accounts cannot use themysql_native_password
authentication method.Note
For backward compatibility, if themysql_native_password
authentication method is used by any existing users, the upgrade will enable the deprecatedmysql_native_password
authentication plugin. As themysql_native_password
authentication plugin will be removed in the next major version after MySQL 8.4, you should start to migrate these user accounts to use thecaching_sha2_password
authentication method. - These new reserved words are added in MySQL 8.4:
MANUAL
,PARALLEL
,QUALIFY
, andTABLESAMPLE
. You cannot use a reserved word in unquoted identifier. - The
AUTO_INCREMENT
option is no longer allowed inFLOAT
andDOUBLE
data types. Upgrade fails if you have a table that contains aFLOAT
orDOUBLE
column withAUTO_INCREMENT
. - The
SET_ANY_DEFINER
privilege introduced in MySQL 8.2.0 is granted to the administrator account andadministrator
role of any DB system running MySQL version 8.2.0 or higher.
Related Topics
Upgrading MySQL 8.4 to MySQL 9.0
MySQL 9.0 introduces some new features and removes some deprecated features as compared to MySQL 8.4.
You should be aware of these changes before upgrading your DB system from MySQL 8.4 to MySQL 9.0:
- The
mysql_native_password
authentication plugin is removed in MySQL 9.0. Your user accounts cannot use themysql_native_password
authentication method.Note
Before upgrading, you should migrate all user accounts that use themysql_native_password
authentication method to thecaching_sha2_password
authentication method.Note
Inbound replication also cannot connect to a replication user on the source server that is created with themysql_native_password
authentication method. You must recreate the replication user withcaching_sha2_password
authentication method. Also, any operation that involvesmysql_native_password
authentication method on the source server will break the replication. For example, creating or changing the password of a user account that usesmysql_native_password
authentication method.
Related Topics