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

Dernière mise à jour : 21/12/2020

J' ai un cluster de base de données MySQL Amazon Aurora qui exécute actuellement la version 1.x. Comment la mettre à jour vers la version Aurora MySQL 2.x ?

Brève description

Les versions 1.x d'Amazon Aurora sont compatibles avec MySQL 5.6 et les versions 2.x d'Amazon Aurora sont compatibles avec MySQL 5.7. Actuellement, Amazon Relational Database Service (Amazon RDS) n'autorise pas la mise à niveau sur place des 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 1.x vers la version 2.x en utilisant les méthodes suivantes :

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

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

Résolution

Mise à niveau à l'aide d'un instantané

Procédez comme suit pour effectuer la mise à niveau d'Aurora MySQL 1.x vers Aurora MySQL 2.x à l'aide d'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 1.x.
  3. Choisissez Actions, puis choisissez 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 Aurora (MySQL 5.7) 2.x disponibles.
  8. Entrez les détails de configuration, puis choisissez Restore DB Instance (Restaurer l'instance de base de données).

Une fois que le cluster Aurora 2.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 1.x vers la version 2.x et que votre base de données prend en charge une application active, arrêtez l'application avant de prendre l'instantané. Cela signifie que vous ne perdez pas les modifications récentes apportées à 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 se 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 1.x à Aurora MySQL 2.x.

  1. Activez les journaux binaires sur le cluster de base de données source Aurora MySQL 1.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 1.x.
  4. Restaurez l'instantané vers Aurora MySQL version 2.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 1.x vers Aurora MySQL 2.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 2.x.

Mise à niveau avec 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 2.x. Ensuite, effectuez la réplication des données d'Aurora MySQL version 1.x à 2.x à l'aide d'AWS DMS. Le temps d'arrêt se produit lorsque l'application passe à Aurora MySQL 2.x.