Utilisation de réplicas en lecture MySQL - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation de réplicas en lecture MySQL

Vous trouverez à la suite des informations spécifiques sur l'utilisation des réplicas en lecture sur RDS for MySQL. Pour obtenir des informations générales sur les réplicas en lecture et des instructions pour les utiliser, consultez Utilisation des réplicas en lecture d'instance de base de données.

Pour plus d’informations sur l’utilisation des réplicas en lecture MySQL, consultez les rubriques suivantes.

Configuration des réplicas en lecture avec MySQL

Avant qu'une instance de base de données MySQL puisse être utilisée comme source de réplication, vous devez activer les sauvegardes automatiques sur l'instance de base de données source. Pour cela, vous devez définir la période de rétention des sauvegardes sur une valeur autre que 0. Cette exigence s’applique également à un réplica en lecture qui serait l’instance de base de données source d’un autre réplica en lecture. Les sauvegardes automatiques sont prises en charge pour les réplicas en lecture exécutant n'importe quelle version de MySQL. Vous pouvez configurer la réplication en fonction des coordonnées des journaux binaires pour une instance de base de données MySQL.

Vous pouvez configurer la réplication à l’aide des identifiants de transaction globaux (GTIDS) sur les versions suivantes :

  • RDS for MySQL version 5.7.44 et versions 5.7 ultérieures

  • RDS for MySQL version 8.0.28 et versions 8.0 ultérieures

  • RDS for MySQL version 8.4.3 et versions 8.4 ultérieures

Pour plus d’informations, consultez Utilisation de la réplication basée sur des identifiants de transaction globaux (GTID).

Vous pouvez créer jusqu’à 15 réplicas en lecture à partir d’une seule instance de base de données au sein de la même région. Pour que la réplication fonctionne de façon efficace, chaque réplica en lecture doit avoir la même quantité de ressources de calcul et de stockage que l'instance de base de données source. Si vous mettez à l’échelle l’instance de base de données source, faites-le également pour les réplicas en lecture.

RDS for MySQL prend en charge les réplicas en lecture en cascade. Pour apprendre à configurer des réplicas en lecture en cascade, consultez Utilisation de réplicas en lecture en cascade avec RDS for MySQL.

Vous pouvez exécuter simultanément plusieurs actions de création et suppression de réplicas en lecture qui référencent la même instance de base de données source. Lorsque vous effectuez ces actions, restez dans la limite de 15 réplicas en lecture pour chaque instance source.

Un réplica en lecture d'une instance de base de données MySQL ne peut pas utiliser une version de moteur de base de données inférieure à son instance de base de données source.

Préparation des instances de base de données MySQL qui utilisent MyISAM

Si votre instance de base de données MySQL utilise un moteur non transactionnel tel que MyISAM, vous devez effectuer les étapes suivantes pour configurer correctement votre réplica en lecture. Ces étapes sont nécessaires pour vous assurer que le réplica en lecture dispose d'une copie cohérente de vos données. Ces étapes ne sont pas nécessaires si toutes vos tables utilisent un moteur transactionnel comme InnoDB.

  1. Arrêtez toutes les opérations DML (Data Manipulation Language) et DDL (Data Definition Language) sur les tables non transactionnelles dans l'instance de bases de données source et attendez qu'elles se terminent. Les instructions SELECT peuvent continuer à fonctionner.

  2. Videz et verrouillez les tables dans l'instance de bases de données source.

  3. Créez le réplica en lecture en suivant l'une des méthodes présentées dans les sections suivantes.

  4. Vérifiez l'avancement de la création du réplica en lecture en utilisant, par exemple, l'opération d'API DescribeDBInstances. Une fois que le réplica en lecture est disponible, déverrouillez les tables de l'instance de base de données source et reprenez les opérations de base de données normales.