Utilisation d’un réplica en lecture pour réduire la durée d’indisponibilité lors de la mise à niveau d’une base de données RDS for MySQL
Dans la plupart des cas, un déploiement bleu/vert est la meilleure option pour réduire la durée d’indisponibilité lors de la mise à niveau d’une instance de base de données MySQL. Pour plus d’informations, consultez Utilisation des déploiements bleu/vert Amazon RDS pour les mises à jour de base de données.
Si vous ne pouvez pas utiliser un déploiement bleu/vert et que votre instance de base de données MySQL est en cours d’utilisation avec une application de production, vous pouvez utiliser la procédure suivante pour mettre à niveau la version de la base de données pour votre instance de base de données. Cette procédure peut réduire la durée d’indisponibilité de votre application.
En utilisant un réplica en lecture, vous pouvez effectuer la plupart des étapes de maintenance à l’avance et ainsi réduire les modifications nécessaires lors d’une panne réelle. Cette technique vous permet de tester et de préparer la nouvelle instance de base de données sans apporter de modifications à votre instance de base de données existante.
La procédure suivante illustre un exemple de mise à niveau de MySQL version 5.7 vers MySQL version 8.0. Vous pouvez utiliser les mêmes étapes générales pour des mises à niveau vers d’autres versions majeures. Vous pouvez utiliser les mêmes étapes générales pour des mises à niveau vers d’autres versions majeures.
Note
Avant de procéder à une mise à niveau de MySQL version 5.7 vers MySQL version 8.0 ou de MySQL version 8.0 vers MySQL version 8.4, quelques vérifications sont nécessaires. Pour plus d’informations, consultez Vérifications préalables aux mises à jour de MySQL 5.7 vers 8.0 et Vérifications préalables aux mises à jour de MySQL 8.0 vers 8.4.
Pour mettre à niveau une base de données MySQL alors qu’une instance de base de données est en cours d’utilisation
-
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l’adresse https://console.aws.amazon.com/rds/
. -
Créez un réplica en lecture de votre instance de base de données MySQL 5.7. Ce processus crée une copie pouvant être mise à niveau de votre base de données. D’autres réplicas en lecture de l’instance de base de données peuvent également exister.
Sur la console, choisissez Bases de données, puis sélectionnez l’instance de base de données que vous souhaitez mettre à niveau.
Sous Actions, choisissez Créer des réplicas en lecture.
Spécifiez une valeur dans le champ Identifiant de l’instance de base de données de votre réplica en lecture et assurez-vous que la Classe d’instance de base de données et les autres paramètres correspondent à votre instance de base de données MySQL 5.7.
Choisissez Créer un réplica en lecture.
-
(Facultatif) Lorsque le réplica en lecture a été créé et que le champ État indique Disponible, convertissez le réplica en lecture en déploiement multi-AZ et activez les sauvegardes.
Par défaut, les sauvegardes désactivées quand un réplica en lecture est créé. Dans la mesure où le réplica en lecture finira par devenir l’instance de base de données de production, nous vous recommandons de configurer un déploiement multi-AZ et d’activer les sauvegardes.
Sur la console, choisissez Bases de données, puis sélectionnez le réplica en lecture que vous venez de créer.
Sélectionnez Modifier.
Dans le champ Déploiement multi-AZ, choisissez Créer une instance de secours.
Dans le champ Backup Retention Period (Période de rétention des sauvegardes), choisissez une valeur positive différente de zéro (par exemple, 3 jours), puis sélectionnez Continue (Continuer).
Pour Planification des modifications, choisissez Appliquer immédiatement.
Choisissez Modifier l’instance DB.
-
Lorsque le champ État du réplica en lecture indique Disponible, procédez à sa mise à niveau vers MySQL 8.0 :
Sur la console, choisissez Bases de données, puis sélectionnez le réplica en lecture que vous venez de créer.
Sélectionnez Modifier.
Dans le champ Version du moteur de base de données, choisissez la version de MySQL 8.0 vers laquelle vous souhaitez effectuer la mise à niveau, puis sélectionnez Continuer.
Pour Planification des modifications, choisissez Appliquer immédiatement.
Choisissez Modifier l’instance de base de données pour démarrer la mise à niveau.
-
Lorsque la mise à niveau est terminée et que le champ État indique Disponible, vérifiez que le réplica en lecture mis à niveau est à jour avec l’instance de base de données MySQL 5.7 source. Pour vérifier, connectez-vous au réplica en lecture et exécutez la commande
SHOW REPLICA STATUS. Si le champSeconds_Behind_Mastera pour valeur0, la réplication est à jour.Note
Les versions précédentes de MySQL utilisaient
SHOW SLAVE STATUSà la place deSHOW REPLICA STATUS. Si vous utilisez une version MySQL antérieure à la version 8.0.23, utilisezSHOW SLAVE STATUS. -
(Facultatif) Créez un réplica en lecture de votre réplica en lecture.
Si vous souhaitez que l’instance de base de données dispose d’un réplica en lecture une fois celle-ci promue en tant qu’instance de base de données autonome, vous pouvez créer le réplica en lecture dès maintenant.
Sur la console, choisissez Bases de données, puis sélectionnez le réplica en lecture que vous venez de mettre à niveau.
Sous Actions, choisissez Créer des réplicas en lecture.
Spécifiez une valeur dans le champ Identifiant de l’instance de base de données de votre réplica en lecture et assurez-vous que la Classe d’instance de base de données et les autres paramètres correspondent à votre instance de base de données MySQL 5.7.
Choisissez Créer un réplica en lecture.
-
(Facultatif) Configurez un groupe de paramètres de base de données personnalisé pour le réplica en lecture.
Si vous souhaitez que l’instance de base de données utilise un groupe de paramètres personnalisé une fois celle-ci promue en tant qu’instance de base de données autonome, vous pouvez créer le groupe de paramètres de base de données dès maintenant et l’associer au réplica en lecture.
Créez un groupe de paramètres de base de données personnalisé pour MySQL 8.0. Pour obtenir des instructions, consultez Création d’un groupe de paramètres de base de données dans Amazon RDS.
Modifiez les paramètres que vous souhaitez modifier dans le groupe de paramètres de base de données fraîchement créé. Pour obtenir des instructions, consultez Modification de paramètres dans un groupe de paramètres de base de données dans Amazon RDS.
Sur la console, choisissez Bases de données, puis sélectionnez le réplica en lecture.
Sélectionnez Modifier.
Dans le champ Groupe de paramètres de base de données, choisissez le groupe de paramètres de base de données MySQL 8.0 que vous venez de créer, puis sélectionnez Continuer.
Pour Planification des modifications, choisissez Appliquer immédiatement.
Choisissez Modifier l’instance de base de données pour démarrer la mise à niveau.
-
Faites de votre réplica en lecture MySQL 8.0 une instance de base de données autonome.
Important
Une fois promu en tant qu’instance de base de données autonome, votre réplica en lecture MySQL 8.0 cesse d’être un réplica de votre instance de base de données MySQL 5.7. Nous vous conseillons d’effectuer la promotion de votre réplica en lecture MySQL 8.0 au cours d’un créneau de maintenance, lorsque votre instance de base de données MySQL 5.7 source est en mode lecture seule et que toutes les opérations d’écriture sont suspendues. Au terme de l’opération de promotion, vous pouvez diriger vos opérations d’écriture vers l’instance de base de données MySQL 8.0 mise à niveau pour veiller à ce qu’aucune opération d’écriture ne se perde.
En outre, avant la promotion de votre réplica en lecture MySQL 8.0, nous vous conseillons d’effectuer toutes les opérations DDL (Data Definition Language) nécessaires sur votre réplica en lecture MySQL 8.0. Par exemple, la création d’index. Cette approche permet d’éviter tout effet négatif sur les performances du réplica en lecture MySQL 8.0 après sa promotion. Pour promouvoir un réplica en lecture.
Sur la console, choisissez Bases de données, puis sélectionnez le réplica en lecture que vous venez de mettre à niveau.
Pour Actions, choisissez Promote (Promouvoir).
Choisissez Oui pour activer les sauvegardes automatiques pour l’instance du réplica en lecture. Pour plus d’informations, consultez Présentation des sauvegardes.
-
Choisissez Continuer.
Choisissez Promouvoir le réplica en lecture.
-
Vous disposez à présent d’une version mise à niveau de votre base de données MySQL. À ce stade, vous pouvez diriger vos applications vers la nouvelle instance de base de données MySQL 8.0.