Mises à niveau de système de base de données

Le service MySQL HeatWave prend en charge les mises à niveau automatiques et manuelles.

  • Mises à niveau automatiques :
    • Les mises à jour de la même version, telles que 8.0.33-u1, sont appliquées automatiquement pendant la fenêtre de maintenance que vous définissez sur le système de base de données. Les versions de mise à jour contiennent des correctifs essentiels tels que des correctifs de sécurité et de stabilité.
    • Une version obsolète devient indisponible environ trois mois après la date d'abandon. Voir Politique d'abandon et de suppression des versions MySQL dans le service MySQL HeatWave. Tout système de base de données qui exécute toujours une version non disponible sera mis à niveau automatiquement dans sa prochaine fenêtre de maintenance, conformément à la politique de maintenance définie sur le système de base de données.
    • Pour un système de base de données de type Toujours gratuit, le processus de maintenance met toujours à niveau la version de base de données vers la version la plus élevée disponible.
  • Mises à niveau manuelles : Vous pouvez mettre à niveau manuellement la version. Voir :
    Note

    Il est recommandé d'effectuer une sauvegarde complète du système de base de données avant la mise à niveau. Voir Création d'une sauvegarde manuelle.

Mise à niveau manuelle d'un système de base de données autonome

Utilisez la console ou l'interface de ligne de commande pour mettre à niveau manuellement un système de base de données autonome vers une version supérieure. Vous pouvez effectuer une mise à niveau vers la même version (pour obtenir les correctifs de sécurité et critiques les plus récents), mais vous ne pouvez pas effectuer une mise à niveau vers une version antérieure.

Note

Si vous souhaitez effectuer une mise à niveau majeure de version telle que MySQL 8.0 vers MySQL 8.4, vous devez vérifier les modifications avant de procéder à la mise à niveau. Voir Mise à niveau de version majeure.

Utilisation de la console

Utilisez la console pour mettre à niveau manuellement le système de base de données autonome.

Cette tâche nécessite les éléments suivants :
  • Système de base de données autonome en cours d'exécution.
Effectuez les opérations suivantes pour mettre à niveau le système de base de données :
  1. Dans la page de liste Systèmes de base de données, recherchez les systèmes de base de données avec lesquels vous voulez travailler. Si vous avez besoin d'aide pour trouver la page de liste ou le système de base de données, voir Liste des systèmes de base de données - Utilisation de la console.
  2. Sélectionnez l'onglet Détails.
  3. Dans le champ Version de la base de données, cliquez sur Modifier.
    Le volet Modifier la version de la base de données s'affiche.
  4. Dans la liste Version de la base de données, sélectionnez la version requise.
    Note

    Vous pouvez sélectionner la même version pour obtenir les dernières mises à jour du service si la version est toujours disponible dans le service.
  5. Cliquez sur Mettre à jour.
Le système de base de données passe à l'état UPDATING lors de sa mise à niveau.

Utilisation de l'interface de ligne de commande

Utilisez l'interface de ligne de commande pour mettre à niveau manuellement le système de base de données autonome.

Cette tâche nécessite les éléments suivants :
Effectuez les opérations suivantes pour mettre à niveau le système de base de données :
  1. Pour extraire la liste des versions disponibles, utilisez la commande version list :
    oci mysql version list --compartment-id <CompartmentOCID>
    Vous obtenez une réponse similaire à la suivante :
    {
      "data": [
        {
          "version-family": "8.4",
          "versions": [
            {
              "description": "8.4.6",
              "version": "8.4.6"
            },
            {
              "description": "8.4.7",
              "version": "8.4.7"
        }
      ]
    }
  2. Confirmez la version du système de base de données. Voir Extraction de la version d'un serveur MySQL Server.
  3. Mettez à niveau la version d'une version inférieure vers une version supérieure telle que 8.4.7 à 8.4.8, ou vers la même version, telle que 8.4.7 à 8.4.7 pour obtenir les dernières mises à jour du service :
    oci mysql db-system update 
                 --db-system-id <DBSystemOCID> 
                 --mysql-version <TargetMySQLVersion>
Après avoir exécuté la commande d'interface de ligne de commande, le statut du système de base de données passe à UPDATING, puis la version passe à la version MySQL cible spécifiée.

Mise à niveau manuelle d'un système de base de données à haute disponibilité

Lorsque vous mettez à niveau un système de base de données à haute disponibilité, les répliques de lecture sont d'abord mises à niveau, suivies des noeuds secondaires, laissant le noeud principal pour la dernière fois. Jusqu'à présent, aucun temps d'arrêt n'est attendu pour le point d'extrémité principal du système de base de données. Lorsque la mise à niveau du noeud principal commence, les connexions existantes au noeud principal sont fermées et aucune nouvelle connexion n'est autorisée. Le nœud principal est supprimé du groupe et l'un des nœuds secondaires déjà mis à niveau est promu au primaire. Ce basculement contrôlé devrait entraîner un bref temps d'arrêt jusqu'à ce que les connexions soient acceptées à nouveau sur la nouvelle instance principale promue.

Vous pouvez choisir de mettre à niveau toutes les instances en même temps. Vous pouvez également effectuer une mise à niveau contrôlée du système de base de données en deux phases distinctes, ce qui vous permet de décider quand le temps d'arrêt du point d'extrémité principal du système de base de données se produit. Toutefois, une mise à niveau contrôlée peut être effectuée sur un système de base de données en mode lecture-écriture uniquement. Pour effectuer une mise à niveau contrôlée, vous devez d'abord mettre à niveau les noeuds secondaires et lire les répliques, puis mettre à niveau le noeud principal vers la même version MySQL cible. Si vous ne mettez pas à niveau le noeud principal après la mise à niveau des noeuds secondaires et des répliques de lecture, le noeud principal est automatiquement mis à niveau lors de la prochaine fenêtre de maintenance programmée. Une mise à niveau n'est considérée comme terminée que lorsque toutes les instances MySQL du système de base de données à haute disponibilité ont été mises à niveau vers la même version.

Lorsqu'une mise à niveau contrôlée est incomplète ou en cours :

  • Si une nouvelle réplique de lecture est créée ou si des correctifs de sécurité et des correctifs doivent être appliqués aux noeuds secondaires ou aux répliques de lecture existants, les répliques de lecture et les noeuds secondaires doivent être de nouveau mis à niveau avant la mise à niveau du noeud principal.
  • Vous pouvez lancer une autre mise à niveau contrôlée vers la même version ou une version supérieure.
  • Vous ne pouvez pas faire passer le système de base de données du mode de lecture-écriture au mode de lecture seule.
Utilisez la console ou l'interface de ligne de commande pour mettre à niveau manuellement un système de base de données vers une version supérieure. Vous pouvez effectuer une mise à niveau vers la même version (pour obtenir les correctifs de sécurité et les correctifs critiques les plus récents), mais vous ne pouvez pas passer à une version antérieure.
Note

Pour effectuer une mise à niveau de version majeure telle que MySQL 8.4 vers MySQL 9.6, vous devez vérifier les modifications avant de procéder à la mise à niveau. Voir Mise à niveau de version majeure.

Utilisation de la console

Utilisez la console pour mettre à niveau manuellement le système de base de données à haute disponibilité.

Cette tâche nécessite les éléments suivants :
  • Système de base de données à haute disponibilité en cours d'exécution.
Pour mettre à niveau le système de base de données, procédez comme suit :
  1. Dans la page de liste Systèmes de base de données, recherchez les systèmes de base de données avec lesquels vous voulez travailler. Si vous avez besoin d'aide pour trouver la page de liste ou le système de base de données, voir Liste des systèmes de base de données - Utilisation de la console.
  2. Sélectionnez l'onglet Détails.
  3. Dans le champ Version de la base de données, cliquez sur Modifier.
    Le volet Modifier la version de la base de données s'affiche.
  4. Dans la liste Cible de mise à jour contrôlée, sélectionnez l'une des options suivantes :
    • Mettre à jour toutes les instances en même temps : Pour mettre à niveau toutes les instances. Si vous n'avez pas encore effectué une mise à niveau contrôlée des noeuds secondaires et des répliques de lecture, cette option est sélectionnée par défaut.
    • Mettre à jour toutes les instances sauf la instance principale : Pour mettre à niveau toutes les instances, à l'exception du noeud principal, qui inclut les noeuds secondaires et les répliques de lecture, le cas échéant.
    • Mettre à jour le noeud principal uniquement : Pour mettre à niveau le noeud principal uniquement. Si vous avez déjà effectué une mise à niveau contrôlée des noeuds secondaires et des répliques de lecture, cette option est sélectionnée par défaut.
      Note

      Cette option n'est activée qu'une fois la mise à niveau contrôlée des noeuds secondaires et des répliques de lecture terminée.
  5. Dans la liste Version de la base de données, sélectionnez la version requise.
    Note

    Vous pouvez sélectionner la même version pour obtenir les dernières mises à jour du service si la version est toujours disponible dans le service.
  6. Cliquez sur Mettre à jour.
Le système de base de données entre l'état UPDATING lors de sa mise à niveau.

Utilisation de l'interface de ligne de commande

Utilisez l'interface de ligne de commande pour mettre à niveau manuellement le système de base de données à haute disponibilité.

Cette tâche nécessite les éléments suivants :
Pour mettre à niveau le système de base de données, procédez comme suit :
  1. Pour extraire la liste des versions disponibles, utilisez la commande version list :
    oci mysql version list --compartment-id <CompartmentOCID>
    Vous obtenez une réponse similaire à la suivante :
    {
      "data": [
        {
          "version-family": "8.4",
          "versions": [
            {
              "description": "8.4.6",
              "version": "8.4.6"
            },
            {
              "description": "8.4.7",
              "version": "8.4.7"
        }
      ]
    }
  2. Confirmez la version du système de base de données. Voir Extraction de la version d'un serveur MySQL Server.
  3. Pour mettre à niveau la version d'une version inférieure vers une version supérieure telle que 8.4.7 à 8.4.8, ou vers la même version, telle que 8.4.7 à 8.4.7 pour obtenir les dernières mises à jour du service, procédez comme suit :
    1. Pour mettre à niveau toutes les instances en même temps, utilisez la commande suivante :
      oci mysql db-system update 
                   --db-system-id <DBSystemOCID> 
                   --mysql-version <TargetMySQLVersion>

      Après avoir exécuté la commande d'interface de ligne de commande, le statut du système de base de données passe à UPDATING, puis la version passe à la version MySQL cible spécifiée.

    2. Vous pouvez également spécifier les instances cibles de mise à niveau pour une mise à niveau contrôlée :
      1. Pour mettre à niveau toutes les instances, à l'exception du noeud principal, qui inclut les noeuds secondaires et les répliques de lecture, le cas échéant, utilisez la commande suivante :
        oci mysql db-system controlled-update  
                     --db-system-id=<DBSystemOCID> 
                     --target-mysql-version=<TargetMySQLVersion>  
                     --target-db-instances=ALL_BUT_PRIMARY
        Après avoir exécuté la commande d'interface de ligne de commande, le statut du système de base de données passe à MISE À JOUR, puis la version passe à la version MySQL cible spécifiée.
      2. Pour mettre à niveau le noeud principal après avoir effectué une mise à niveau contrôlée des noeuds secondaires et des répliques de lecture, utilisez la commande suivante :
        oci mysql db-system controlled-update  
                     --db-system-id=<DBSystemOCID> 
                     --target-mysql-version=<TargetMySQLVersion>  
                     --target-db-instances=PRIMARY_ONLY
        Après avoir exécuté la commande d'interface de ligne de commande, le statut du système de base de données passe à MISE À JOUR, puis la version passe à la version MySQL cible spécifiée.