Exportation de données depuis une instance My SQL DB à l'aide de la réplication - 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.

Exportation de données depuis une instance My SQL DB à l'aide de la réplication

Pour exporter des données d'une instance RDS for My SQL DB vers une SQL instance My exécutée en externe à AmazonRDS, vous pouvez utiliser la réplication. Dans ce scénario, l'instance My SQL DB est l'instance My SQL DB source, et l'SQLinstance My exécutée en externe à Amazon RDS est la My SQL database externe.

La base de données externe My SQL Database peut être exécutée sur site dans votre centre de données ou sur une EC2 instance Amazon. La SQL base de données My DB externe doit exécuter la même version que l'instance My SQL DB source, ou une version ultérieure.

La réplication vers une SQL base de données My DB externe n'est prise en charge que pendant le temps nécessaire pour exporter une base de données depuis l'instance My SQL DB source. La réplication doit être interrompue lorsque les données ont été exportées et que les applications peuvent commencer à accéder à l'SQLinstance externe My.

La liste suivante montre les étapes à suivre. Chaque étape est présentée plus en détail dans les sections ultérieures.

  1. Préparez une instance My SQL DB externe.

  2. Préparez l'instance My SQL DB source pour la réplication.

  3. Utilisez l'utilitaire mysqldump pour transférer la base de données de l'instance My SQL DB source vers l'instance My DB externe. SQL

  4. Lancez la réplication vers la base de SQL données My database externe.

  5. Une fois l'exportation terminée, arrêtez la réplication.

Préparer une base de SQL données My externe

Procédez comme suit pour préparer la base de données externe Ma SQL base de données.

Pour préparer la base de données externe Ma SQL base de données
  1. Installez la base de données externe Ma SQL base de données.

  2. Connectez-vous à la base de données externe My SQL Database en tant qu'utilisateur principal. Créez ensuite les utilisateurs requis pour prendre en charge les administrateurs, les applications et les services qui accèdent à la base de données.

  3. Suivez les instructions de la section Ma SQL documentation pour préparer la SQL base de données My externe sous forme de réplique. Pour plus d'informations, reportez-vous à la section Configuration de la configuration de la réplique dans la section Ma SQL documentation.

  4. Configurez une règle de sortie pour que la base de SQL données My Database externe fonctionne comme une réplique en lecture lors de l'exportation. La règle de sortie permet à la SQL base de données externe My DB de se connecter à l'instance My SQL DB source pendant la réplication. Spécifiez une règle de sortie qui autorise les connexions au protocole de contrôle de transmission (TCP) au port et à l'adresse IP de l'instance My SQL DB source.

    Spécifiez les règles de sortie appropriées pour votre environnement :

    • Si la base de données externe My SQL Database s'exécute dans une EC2 instance Amazon dans un cloud privé virtuel (VPC) basé sur le VPC service Amazon, spécifiez les règles de sortie dans un groupe VPC de sécurité. Pour de plus amples informations, veuillez consulter Contrôle d'accès par groupe de sécurité.

    • Si la base de données externe My SQL database est installée sur site, spécifiez les règles de sortie dans un pare-feu.

  5. Si la base de données externe My SQL database s'exécute dans unVPC, configurez les règles de la liste de contrôle d'VPCaccès (ACL) en plus de la règle de sortie du groupe de sécurité :

    • Configurez une règle d'ACLentrée autorisant le TCP trafic vers les ports 1024 à 65535 à partir de l'adresse IP de l'instance My DB source. SQL

    • Configurez une ACL règle de sortie autorisant le TCP trafic sortant vers le port et l'adresse IP de l'instance My SQL DB source.

    Pour plus d'informations sur le VPC réseau AmazonACLs, consultez la section Réseau ACLs dans le guide de VPC l'utilisateur Amazon.

  6. (Facultatif) Définissez le paramètre max_allowed_packet sur la taille maximale pour éviter les erreurs de réplication. Nous recommandons ce paramètre.

Préparer l'instance My SQL DB source

Procédez comme suit pour préparer l'instance My SQL DB source en tant que source de réplication.

Pour préparer l'instance My SQL DB source
  1. Assurez-vous que votre ordinateur client possède assez d'espace disque pour enregistrer les journaux binaires lors de la configuration de la réplication.

  2. Connectez-vous à l'instance My SQL DB source et créez un compte de réplication en suivant les instructions de la section Création d'un utilisateur pour la réplication dans la SQL documentation Ma.

  3. Configurez les règles d'entrée sur le système exécutant l'instance My SQL DB source pour permettre à la SQL base de données My DB externe de se connecter pendant la réplication. Spécifiez une règle d'entrée qui autorise TCP les connexions au port utilisé par l'instance My SQL DB source à partir de l'adresse IP de la SQL base de données My DB externe.

  4. Spécifiez les règles de sortie :

    • Si l'instance My SQL DB source s'exécute dans unVPC, spécifiez les règles d'entrée dans un groupe VPC de sécurité. Pour de plus amples informations, veuillez consulter Contrôle d'accès par groupe de sécurité.

  5. Si l'instance source My SQL DB s'exécute dans unVPC, configurez des VPC ACL règles en plus de la règle d'entrée du groupe de sécurité :

    • Configurez une règle d'ACLentrée pour autoriser TCP les connexions au port utilisé par l'RDSinstance Amazon à partir de l'adresse IP de la base de SQL données My database externe.

    • Configurez une règle de ACL sortie pour autoriser TCP les connexions entre les ports 1024 et 65535 à l'adresse IP de la base de données My database externe. SQL

    Pour plus d'informations sur le VPC réseau AmazonACLs, consultez la section Réseau ACLs dans le guide de VPC l'utilisateur Amazon.

  6. Assurez-vous que la période de rétention des sauvegardes soit assez longue pour qu'aucun journal binaire ne soit purgé pendant l'exportation. Si l'un des journaux est purgé avant la fin de l'exportation, vous devez redémarrer la réplication depuis le début. Pour plus d'informations sur la configuration de la période de rétention des sauvegardes, consultez Présentation des sauvegardes.

  7. Utilisez la procédure stockée mysql.rds_set_configuration pour définir une période de conservation du journal binaire suffisamment longue pour que les journaux binaires ne soient pas purgés pendant l'exportation. Pour de plus amples informations, veuillez consulter Accès aux journaux binaires MySQL.

  8. Créez une réplique Amazon RDS read à partir de l'instance My SQL DB source pour garantir que les journaux binaires de l'instance My SQL DB source ne sont pas purgés. Pour de plus amples informations, veuillez consulter Création d'un réplica en lecture.

  9. Une fois la réplique Amazon RDS read créée, appelez la procédure mysql.rds_stop_replication stockée pour arrêter le processus de réplication. L'instance My SQL DB source ne purge plus ses fichiers journaux binaires, ils sont donc disponibles pour le processus de réplication.

  10. (Facultatif) Définissez le paramètre max_allowed_packet et le paramètre slave_max_allowed_packet sur la taille maximale pour éviter les erreurs de réplication. La taille maximale pour les deux paramètres est de 1 Go. Nous recommandons ces valeurs pour les deux paramètres. Pour plus d'informations sur la définition des paramètres, consultez Modification des paramètres d'un groupe de paramètres de base de données dans Amazon RDS.

Copier la base de données

Effectuez les étapes suivantes pour copier la base de données.

Pour copier la base de données
  1. Connectez-vous à la réplique en RDS lecture de l'instance My SQL DB source et exécutez l'SQLSHOW REPLICA STATUS\Ginstruction My. Notez les valeurs pour les éléments suivants :

    • Master_Host

    • Master_Port

    • Master_Log_File

    • Exec_Master_Log_Pos

    Note

    Les versions précédentes de My SQL utilisaient à la SHOW SLAVE STATUS place deSHOW REPLICA STATUS. Si vous utilisez une SQL version My antérieure à 8.0.23, utilisez. SHOW SLAVE STATUS

  2. Utilisez l'utilitaire mysqldump pour créer un instantané qui copie les données d'Amazon sur votre ordinateur RDS client local. Assurez-vous que votre ordinateur client possède assez d'espace disque pour contenir les fichiers mysqldump des bases de données à répliquer. Ce processus peut prendre plusieurs heures pour les bases de données très volumineuses. Suivez les instructions de la section Création d'un instantané de données à l'aide de mysqldump dans la section Ma documentation. SQL

    L'exemple suivant exécute mysqldump sur un client et écrit le vidage dans un fichier.

    Dans Linux, macOS, ou Unix:

    mysqldump -h source_MySQL_DB_instance_endpoint \ -u user \ -ppassword \ --port=3306 \ --single-transaction \ --routines \ --triggers \ --databases database database2 > path/rds-dump.sql

    Dans Windows:

    mysqldump -h source_MySQL_DB_instance_endpoint ^ -u user ^ -ppassword ^ --port=3306 ^ --single-transaction ^ --routines ^ --triggers ^ --databases database database2 > path\rds-dump.sql

    Vous pouvez charger le fichier de sauvegarde dans la base de données externe Ma SQL base de données. Pour plus d'informations, consultez la section Reloading SQL -Format Backups dans la section Ma SQL documentation. Vous pouvez exécuter un autre utilitaire pour charger les données dans la base de données externe Ma SQL base de données.

Terminer l'exportation

Effectuez les étapes suivantes pour terminer l'exportation.

Pour terminer l'exportation
  1. Utilisez l'SQLCHANGE MASTERinstruction My pour configurer la base de SQL données My externe. Spécifiez l'ID et le mot de passe de l'utilisateur auquel ont été attribuées les autorisations REPLICATION SLAVE. Spécifiez les Exec_Master_Log_Pos valeurs Master_HostMaster_Port,Relay_Master_Log_File, et que vous avez obtenues à partir de l'SQLSHOW REPLICA STATUS\Ginstruction My que vous avez exécutée sur la réplique RDS lue. Pour plus d'informations, consultez CHANGEMASTERla section TO Statement dans la section Ma SQL documentation.

    Note

    Les versions précédentes de My SQL utilisaient à la SHOW SLAVE STATUS place deSHOW REPLICA STATUS. Si vous utilisez une SQL version My antérieure à 8.0.23, utilisez. SHOW SLAVE STATUS

  2. Utilisez la SQL START REPLICA commande My pour lancer la réplication depuis l'instance My SQL DB source vers la SQL base de données My DB externe.

    Cela démarre la réplication à partir de l'instance My SQL DB source et exporte toutes les modifications de source survenues après l'arrêt de la réplication à partir de la réplique Amazon RDS read.

    Note

    Les versions précédentes de My SQL utilisaient à la START SLAVE place deSTART REPLICA. Si vous utilisez une SQL version My antérieure à 8.0.23, utilisez. START SLAVE

  3. Exécutez la SQL SHOW REPLICA STATUS\G commande My sur la SQL base de données My externe pour vérifier qu'elle fonctionne comme une réplique en lecture. Pour plus d'informations sur l'interprétation des résultats, voir SHOWSLAVE| REPLICA STATUS Déclaration dans ma SQL documentation.

  4. Une fois que la réplication sur l'instance My SQL DB externe a rattrapé l'instance My SQL DB source, utilisez la SQL STOP REPLICA commande My pour arrêter la réplication depuis l'instance My SQL DB source.

    Note

    Les versions précédentes de My SQL utilisaient à la STOP SLAVE place deSTOP REPLICA. Si vous utilisez une SQL version My antérieure à 8.0.23, utilisez. STOP SLAVE

  5. Sur la réplique Amazon RDS read, appelez la procédure mysql.rds_start_replication stockée. Cela permet RDS à Amazon de commencer à purger les fichiers journaux binaires de l'instance My SQL DB source.