Dimensionnement des lectures pour votre SQL base de données My avec Amazon Aurora - Amazon Aurora

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.

Dimensionnement des lectures pour votre SQL base de données My avec Amazon Aurora

Vous pouvez utiliser Amazon Aurora avec votre instance My SQL DB pour tirer parti des fonctionnalités de dimensionnement de lecture d'Amazon Aurora et étendre la charge de travail de lecture de votre instance My SQL DB. Pour utiliser Aurora afin de dimensionner les lectures de votre instance My SQL DB, créez un cluster Amazon Aurora My SQL DB et faites-en une réplique en lecture de votre instance My SQL DB. Cela s'applique à une instance RDS for My SQL DB ou à une instance My SQL database exécutée en externe à AmazonRDS.

Pour plus d'informations sur la création d'un cluster de bases de données Amazon Aurora, consultez Création d'un cluster de base de données Amazon Aurora.

Lorsque vous configurez la réplication entre votre instance My SQL DB et votre cluster de base de données Amazon Aurora, veillez à suivre les directives suivantes :

  • Utilisez l'adresse du point de terminaison du cluster de base de données Amazon Aurora lorsque vous référencez votre cluster Amazon Aurora My SQL DB. En cas de basculement, la réplique Aurora promue au rang d'instance principale du cluster Aurora My SQL DB continue d'utiliser l'adresse de point de terminaison du cluster de bases de données.

  • Tenez à jour les journaux binaires sur votre instance d'enregistreur jusqu'à ce que vous ayez vérifié qu'ils ont été appliqués au réplica Aurora. Cela garantit que vous pouvez restaurer votre instance d'enregistreur en cas de défaillance.

Important

Lorsque vous utilisez une réplication auto-gérée, vous êtes chargé de surveiller et résoudre les problèmes de réplication éventuels. Pour de plus amples informations, veuillez consulter Diagnostic et résolution du retard entre réplicas en lecture.

Note

Les autorisations requises pour démarrer la réplication sur un cluster Aurora My SQL DB sont limitées et ne sont pas accessibles à votre utilisateur RDS principal Amazon. Par conséquent, vous devez utiliser les mysql.rds_start_replication procédures mysql.rds_set_external_master (Aurora My version 2) SQL or mysql.rds_set_external_source (Aurora My version 3) SQL et pour configurer la réplication entre votre cluster Aurora My SQL DB et votre instance My SQL DB.

Démarrer la réplication entre une instance source externe et un cluster Aurora My SQL DB

  1. Rendez l'instance source My SQL DB en lecture seule :

    mysql> FLUSH TABLES WITH READ LOCK; mysql> SET GLOBAL read_only = ON;
  2. Exécutez la SHOW MASTER STATUS commande sur l'instance My SQL DB source pour déterminer l'emplacement du journal binaire. Vous obtenez une sortie similaire à ce qui suit :

    File Position ------------------------------------ mysql-bin-changelog.000031 107 ------------------------------------
  3. Copiez la base de données depuis l'instance externe My SQL DB vers le cluster Amazon Aurora My SQL DB à l'aide demysqldump. Pour les bases de données très volumineuses, vous pouvez utiliser la procédure décrite dans Importer des données vers une instance de base de données My SQL ou MariaDB avec un temps d'arrêt réduit dans le guide de l'utilisateur d'Amazon Relational Database Service.

    Pour LinuxmacOS, ou Unix :

    mysqldump \ --databases <database_name> \ --single-transaction \ --compress \ --order-by-primary \ -u local_user \ -p local_password | mysql \ --host aurora_cluster_endpoint_address \ --port 3306 \ -u RDS_user_name \ -p RDS_password

    Dans Windows :

    mysqldump ^ --databases <database_name> ^ --single-transaction ^ --compress ^ --order-by-primary ^ -u local_user ^ -p local_password | mysql ^ --host aurora_cluster_endpoint_address ^ --port 3306 ^ -u RDS_user_name ^ -p RDS_password
    Note

    Veillez bien à ce qu'il n'y ait pas d'espace entre l'option -p et le mot de passe saisi.

    Utilisez les options --host, --user (-u), --port et -p de la commande mysql pour spécifier le nom d'hôte, le nom d'utilisateur, le port et le mot de passe pour vous connecter à votre cluster de bases de données Aurora. Le nom d'hôte est le DNS nom du point de terminaison du cluster de base de données Amazon Aurora, par exemple,mydbcluster.cluster-123456789012.us-east-1.rds.amazonaws.com. Vous pouvez trouver la valeur du point de terminaison dans les détails du cluster dans l'Amazon RDS Management Console.

  4. Rendez l'instance source My SQL DB inscriptible à nouveau :

    mysql> SET GLOBAL read_only = OFF; mysql> UNLOCK TABLES;

    Pour plus d'informations sur la création de sauvegardes destinées à la réplication, consultez Backing up a source or replica by making it read onlyla section Ma SQL documentation.

  5. Dans Amazon RDS Management Console, ajoutez l'adresse IP du serveur qui héberge la base de SQL données My database source au groupe de VPC sécurité du cluster de base de données Amazon Aurora. Pour plus d'informations sur la modification d'un groupe VPC de sécurité, consultez la section Groupes de sécurité correspondants VPC dans le guide de l'utilisateur d'Amazon Virtual Private Cloud.

    Vous devrez peut-être également configurer votre réseau local pour autoriser les connexions à partir de l'adresse IP de votre cluster de base de données Amazon Aurora, afin qu'il puisse communiquer avec votre SQL instance My instance source. Pour rechercher l'adresse IP du cluster de bases de données Amazon Aurora, utilisez la commande host.

    host aurora_endpoint_address

    Le nom d'hôte est le DNS nom du point de terminaison du cluster de base de données Amazon Aurora.

  6. À l'aide du client de votre choix, connectez-vous à l'SQLinstance externe My et créez un My SQL user à utiliser pour la réplication. Ce compte est utilisé exclusivement pour la réplication et doit être limité à votre domaine pour améliorer la sécurité. Voici un exemple.

    CREATE USER 'repl_user'@'example.com' IDENTIFIED BY 'password';
  7. Pour l'SQLinstance externe My, accordez REPLICATION CLIENT et REPLICATION SLAVE privilèges à votre utilisateur de réplication. Par exemple, pour accorder les privilèges REPLICATION CLIENT et REPLICATION SLAVE sur toutes les bases de données à l'utilisateur « repl_user » de votre domaine, émettez la commande suivante.

    GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'example.com' IDENTIFIED BY 'password';
  8. Prenez un instantané manuel du cluster Aurora My SQL DB pour en faire la réplique en lecture avant de configurer la réplication. Si vous devez rétablir la réplication avec le cluster de base de données sous forme de réplique en lecture, vous pouvez restaurer le cluster Aurora My SQL DB à partir de cet instantané au lieu d'avoir à importer les données de votre instance My SQL DB dans un nouveau cluster Aurora My SQL DB.

  9. Transformez le cluster de base de données Amazon Aurora en réplica. Connectez-vous au cluster de base de données Amazon Aurora en tant qu'utilisateur principal et identifiez la source Ma SQL base de données comme source de réplication à l'aide mysql.rds_start_replication des procédures mysql.rds_set_external_master (Aurora My version 2) SQL ou mysql.rds_set_external_source (Aurora My version 3) SQL et.

    Utilisez le nom et la position du fichier binlog que vous avez déterminés à l'étape 2. Voici un exemple.

    For Aurora MySQL version 2: CALL mysql.rds_set_external_master ('mymasterserver.example.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 0); For Aurora MySQL version 3: CALL mysql.rds_set_external_source ('mymasterserver.example.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 0);
  10. Sur le cluster de base de données Amazon Aurora, appelez la procédure mysql.rds_start_replication pour démarrer la réplication.

    CALL mysql.rds_start_replication;

Après avoir établi la réplication entre votre instance My SQL DB source et votre cluster de base de données Amazon Aurora, vous pouvez ajouter des répliques Aurora à votre cluster de base de données Amazon Aurora. Vous pouvez alors vous connecter aux réplicas Aurora pour dimensionner vos données en lecture. Pour plus d'informations sur la création d'un réplica Aurora, consultez Ajout de réplicas Aurora à un cluster de bases de données.