Comment mettre à niveau mon cluster de base de données MySQL Amazon Aurora vers une nouvelle version ?

Dernière mise à jour : 14/06/2022

J'ai un cluster de base de données Amazon Aurora compatible avec MySQL qui exécute actuellement la version 2.x. Comment puis-je le mettre à niveau vers la version 3.x d'Aurora compatible avec MySQL ?

Brève description

Les versions 2.x d'Amazon Aurora sont compatibles avec MySQL 5.7 et les versions 3.x d'Amazon Aurora sont compatibles avec MySQL 8.0. Actuellement, Amazon Relational Database Service (Amazon RDS) n'autorise pas la mise à niveau sur place des clusters Aurora MySQL 2.x vers Aurora MySQL 3.x. Les mises à niveau sur place s'appliquent uniquement aux clusters Aurora MySQL 1.x vers Aurora MySQL 2.x.

Remarque : effectuez d'abord la mise à jour sur un cluster de base de données hors production. Surveillez ensuite comment les modifications apportées à la nouvelle version affectent vos instances et applications.

Mettez à niveau votre cluster de base de données MySQL Amazon Aurora de la version 2.x vers la version 3.x en utilisant les méthodes suivantes :

  • Prenez un instantané de votre cluster de base de données et restaurez-le dans Aurora MySQL 3.x
  • Configurez la réplication manuelle pour changer votre service
  • Utilisez AWS Database Migration Service (AWS DMS) pour migrer votre service

Remarque : le temps d'arrêt varie en fonction de la méthode que vous utilisez.

Solution

Mise à niveau en utilisant d'un instantané

Procédez comme suit pour effectuer la mise à niveau d'Aurora MySQL 2.x vers Aurora MySQL 3.x en utilisant un instantané :

  1. Ouvrez la console AWS RDS.
  2. Dans le panneau de navigation, choisissez Databases (Bases de données), puis choisissez votre cluster de base de données Aurora 2.x.
  3. Choisissez Actions, puis Take Snapshot (Prendre un instantané).
  4. Dans le panneau de navigation, choisissez Snapshots (Instantanés).
  5. Après la création de l'instantané du cluster de base de données, choisissez l'instantané, puis choisissez Actions.
  6. Choisissez Restore Snapshot (Restaurer l'instantané).
  7. Dans la section Instance Specification (Spécification d'instance), pour DB Engine Version (Version du moteur de base de données), choisissez l'une des versions d'Aurora 3.X (compatible avec MySQL 8.0.23) disponibles.
  8. Saisissez les détails de configuration, puis choisissez Restore DB Instance (Restaurer l'instance de base de données).

Une fois que le cluster Aurora 3.x est disponible, vous pouvez rediriger les connexions vers la nouvelle instance de base de données.

Remarque : si vous utilisez un instantané pour mettre à niveau votre cluster de base de données Aurora de la version 2.x vers la version 3.x et que votre base de données prend en charge une application active, arrêtez l'application avant de prendre l'instantané. Cela permet de s'assurer que vous ne perdez pas les modifications récentes de vos données. Le temps d'arrêt se produit à partir du moment où la création de l'instantané commence jusqu'à ce que la nouvelle base de données soit créée et entre dans un état d'exécution.

Mise à niveau en utilisant la réplication manuelle

Remarque : lorsque vous configurez la réplication manuelle pour mettre à niveau votre application, un temps d'arrêt se produit lors du passage d'Aurora MySQL 2.x à Aurora MySQL 3.x.

  1. Activez les journaux binaires sur le cluster de base de données source Aurora MySQL 2.x.
  2. Augmentez la période de rétention de votre cluster de base de données.
  3. Prenez un instantané du cluster de base de données Aurora MySQL 2.x.
  4. Restaurez l'instantané vers Aurora MySQL version 3.x.
  5. Capturez la position du journal binaire à partir du cluster de base de données restauré.
  6. Démarrez la réplication d'Aurora MySQL 2.x vers Aurora MySQL 3.x. Pour plus d'informations, consultez Configuration de la réplication de position du fichier journal binaire avec une instance source externe.

Une fois la réplication synchronisée, pointez votre application vers Aurora MySQL 3.x.

Mise à niveau en utilisant AWS DMS

Vous pouvez également utiliser AWS DMS pour mettre à niveau votre application, avec un minimum de temps d'arrêt. Cette mise à niveau est plus complexe que les options précédentes. Pour effectuer cette migration, créez une instance de base de données Aurora MySQL version 3.x. Ensuite, effectuez la réplication des données d'Aurora MySQL version 2.x à 3.x en utilisant AWS DMS. Le temps d'arrêt se produit lorsque l'application passe à Aurora MySQL 3.x.