Mise à niveau majeure de version
Une mise à niveau majeure fait référence à la mise à niveau d'une version majeure vers une autre version majeure selon l'un des chemins de mise à niveau majeurs suivants :
- Passez d'une version LTS à une version Innovation avant la prochaine série LTS.
- Effectuez une mise à niveau d'une version Bugfix ou LTS vers la série LTS suivante.
- Passez d'une version Innovation à la prochaine série LTS.
Ces chemins incluent les transitions entre les versions Innovation et LTS, qui sont considérées comme des mises à niveau de version majeures.
La mise à niveau entre les versions Innovation de la même version majeure (par exemple, 9.5.x à 9.6.x) est prise en charge, mais elle n'est pas considérée comme une mise à niveau majeure.
Si votre mise à niveau ne suit pas l'un de ces chemins, elle échoue. Même si la mise à niveau semble avoir commencé, elle finira par échouer.
Vous ne pouvez pas effectuer de mise à niveau directe entre les versions Innovation de différentes versions majeures (par exemple, de la version 8.3.0 à la version 9.0.0). Au lieu de cela, vous devez d'abord mettre à niveau vers la version LTS la plus proche, puis vers la version Innovation suivante (par exemple, passer de la version 8.3.0 à la version 8.4.0, puis à la version 9.0.0).
Tableau 5-9 Chemins de mise à niveau des versions principales
| Version en cours | Version vers laquelle vous pouvez effectuer la mise à niveau |
|---|---|
|
Correction de bugs 8.0 |
8.4 LTS |
|
8.4 LTS |
9.5.x Innovation 9.6.x Innovation 9.7 LTS |
| Innovation 9.x | 9.7 LTS |
Avant d'effectuer une mise à niveau de version majeure, vous devez d'abord identifier les modifications entre la version en cours et la nouvelle version, puis vérifier que ces modifications n'affectent pas la façon dont vous utilisez le serveur de base de données MySQL.
Impossible de rétrograder un système de base de données vers un numéro de version MySQL inférieur. Avant la mise à niveau, il est recommandé d'effectuer une sauvegarde du système avant cette opération. Reportez-vous à Création d'une sauvegarde manuelle. La sauvegarde vous permet de restaurer le système de base de données sur le numéro de version d'origine avant la mise à niveau.
Chaque version majeure du serveur MySQL est susceptible d'introduire de nouvelles fonctionnalités et de supprimer certaines fonctionnalités en phase d'abandon. Les principales modifications que vous devez prendre en compte avant la mise à niveau sont répertoriées dans les sections suivantes :
Mise à niveau du correctif de bogue MySQL 8.0 vers MySQL 8.4 LTS
MySQL 8.4 LTS introduit de nouvelles fonctionnalités et supprime certaines fonctionnalités obsolètes par rapport à MySQL 8.0 Bugfix.
- Lorsque la variable
default_authentication_pluginest enlevée dans MySQL 8.4, le système de base de données ignore la variabledefault_authentication_plugindans la configuration. La valeur par défaut est toujourscaching_sha2_password. Vous pouvez remplacer la méthode d'authentification par défaut de vos comptes utilisateur par les instructionsCREATE USERetALTER USERsi nécessaire. - Le module d'extension d'authentification
mysql_native_passworden phase d'abandon est désactivé par défaut. Vos comptes utilisateur ne peuvent pas utiliser la méthode d'authentificationmysql_native_password.Remarque
Pour des raisons de compatibilité ascendante, si la méthode d'authentificationmysql_native_passwordest utilisée par des utilisateurs existants, la mise à niveau active le module d'extension d'authentificationmysql_native_passworden phase d'abandon. Etant donné que le module d'extension d'authentificationmysql_native_passwordsera enlevé dans la prochaine version majeure après MySQL 8.4, vous devez commencer à migrer ces comptes utilisateur pour utiliser la méthode d'authentificationcaching_sha2_password. - Ces nouveaux mots réservés sont ajoutés dans MySQL 8.4 :
MANUAL,PARALLEL,QUALIFYetTABLESAMPLE. Vous ne pouvez pas utiliser un mot réservé dans un identifiant sans guillemets. - L'option
AUTO_INCREMENTn'est plus autorisée dans les types de donnéesFLOATetDOUBLE. La mise à niveau échoue si vous disposez d'une table contenant une colonneFLOATouDOUBLEavecAUTO_INCREMENT. - Le privilège
SET_ANY_DEFINERintroduit dans MySQL 8.2.0 est accordé au compte administrateur et au rôleadministratorde tout système de base de données exécutant MySQL version 8.2.0 ou supérieure.
Vous ne pouvez pas mettre à niveau MySQL 8.0 vers MySQL 9.x directement. Vous devez d'abord mettre à niveau MySQL 8.0 vers MySQL 8.4, puis mettre à niveau MySQL 8.4 vers MySQL 9.x.
Rubriques connexes
Mise à niveau de MySQL 8.4 LTS vers MySQL 9.x Innovation ou 9.7 LTS
MySQL 9.x Innovation et 9.7 LTS introduisent de nouvelles fonctionnalités et suppriment certaines fonctionnalités obsolètes par rapport à MySQL 8.4 LTS.
- Le module d'extension d'authentification
mysql_native_passwordest supprimé dans MySQL 9.x Innovation et 9.7 LTS. Vos comptes utilisateur ne peuvent pas utiliser la méthode d'authentificationmysql_native_password.Remarque
Avant de procéder à la mise à niveau, vous devez migrer tous les comptes utilisateur qui utilisent la méthode d'authentificationmysql_native_passwordvers la méthode d'authentificationcaching_sha2_password.Remarque
La réplication entrante ne peut pas non plus se connecter à un utilisateur de réplication sur le serveur source créé avec la méthode d'authentificationmysql_native_password. Vous devez recréer l'utilisateur de réplication avec la méthode d'authentificationcaching_sha2_password. En outre, toute opération impliquant la méthode d'authentificationmysql_native_passwordsur le serveur source interrompra la réplication. Par exemple, la création ou la modification du mot de passe d'un compte utilisateur utilisant la méthode d'authentificationmysql_native_password. - Dans MySQL 9.2 et les versions ultérieures, le mot-clé
BINLOGest restreint et ne peut plus être utilisé sans guillemets en tant que libellé dans une routine stockée ou une fonction stockée MySQL. Vous devez mettre à jour les applications concernées en conséquence, avant de passer à MySQL 9.x Innovation ou 9.7 LTS.