Comment importer des données dans mon instance de base de données RDS ?

Date de la dernière mise à jour : 19/11/2019

Comment importer des données de ma base de données existante dans une instance Amazon Relational Database Service (Amazon RDS) avec une interruption minimale ?

Brève description

Pour importer des données d'une base de données existante dans une instance de base de données RDS :

  1. Exportez les données de la base de données source.
  2. Chargez les données exportées.
  3. Importez les données chargées dans une instance de base de données RDS.

L'importation de données nécessite différentes périodes d'indisponibilité du serveur, en fonction de la taille de la base de données source importée. Le temps d'arrêt requis est également affecté par le type de moteur de base de données utilisé par l'instance de base de données de destination. Consultez les résolutions de base de données suivantes pour plus d'informations.

Résolution

Instructions générales de performances pour l'importation de données

Les instructions de performances suivantes s'appliquent à toutes les opérations d'importation/exportation de données Amazon RDS :

  • Chargez et déchargez les données en parallèle en utilisant la compression et plusieurs threads. Si vous chargez une quantité importante de données en parallèle, veillez à ce que l'ordinateur client dispose des ressources suffisantes pendant le chargement des données.
  • Désactivez les sauvegardes automatiques pour les chargements de données volumineux en définissant la valeur 0 (zéro) pour la conservation des sauvegardes de l'instance de base de données RDS. Vous devez redémarrer l'instance de base de données RDS pour appliquer ce changement. Important : la désactivation des sauvegardes n'est pas recommandée pour les instances de production, car elle empêche la restauration à un instant dans le passé, supprime tous les instantanés automatiques précédents de l'instance de base de données et empêche la récupération des instantanés supprimés. Toutefois, si l'instance de base de données n'est pas encore dans l'environnement de production, la désactivation des sauvegardes peut améliorer les performances de chargement. Une fois le chargement des données terminé, n'oubliez pas d'activer les sauvegardes automatiques. Créez des instantanés de base de données à des étapes importantes du chargement de manière à pouvoir restaurer votre instance à partir d'un instantané, si nécessaire.
  • Désactivez la fonction Multi-AZ pendant le chargement des données afin de réduire la surcharge engendrée par les opérations d'écriture synchrones des chargements de données Multi-AZ. Important : la fonctionnalité Multi-AZ est une bonne pratique pour toutes les instances de base de données RDS de production, et elle doit être activée dès que le chargement des données est terminé.

Instructions d'importation de données spécifiques au moteur de base de données

Importation de données dans une instance de base de données MySQL ou MariaDB Amazon RDS : vous pouvez utiliser des outils MySQL, tels que mysqldump, mysql et replication pour importer des données vers Amazon RDS. La réplication en utilisant MySQL 5.6.13 ou une version ultérieure peut répliquer des données vers et depuis une instance de base de données RDS externe. Lors de l'importation de données dans une instance de base de données MariaDB, vous pouvez utiliser des outils MariaDB, tels que mysqldump, mysql et la réplication standard pour importer les données dans Amazon RDS.

Importation de données dans PostgreSQL sur Amazon RDS : vous pouvez utiliser les outils PostgreSQL, tels que pg_dump, psqlet la commande copy pour importer des données dans Amazon RDS.

Importation de données dans Oracle sur Amazon RDS : les petites bases de données peuvent utiliser la fonction de copie de base de données disponible avec Oracle SQL Developer. Les bases de données plus volumineuses requièrent une pompe de données pour exporter et importer en utilisant un lien de base de données et le transfert de fichiers vers le répertoire défini dans l'instance de base de données RDS lors de la définition des paramètres d'exportation.

Importation et exportation de bases de données SQL Server : vous pouvez utiliser la sauvegarde et la restauration natives pour les bases de données Microsoft SQL Server en utilisant les fichiers .bak. Vous pouvez également créer une sauvegarde complète de votre base de données sur site, la stocker dans Amazon Simple Storage Service (Amazon S3), puis la restaurer dans Amazon RDS.

Importation de données dans Aurora MySQL : comme pour l'importation dans Amazon RDS, vous pouvez utiliser à des outils natifs, tels que mysqldump et mydumper, pour migrer vers Amazon Aurora pour MySQL. Vous pouvez utiliser la réplication de journal binaire compatible Aurora MySQL pour réduire les interruptions. Vous pouvez également migrer vers Aurora MySQL en utilisant Percona Xtrabakup stocké dans Amazon S3 en utilisant un instantané d'une instance de base de données Amazon RDS MySQL ou en créant un réplica Aurora pour une instance de base de données RDS MySQL. Pour toutes les options de migration, veillez à convertir toutes les tables sources en moteur de stockage InnoDB avec le format de ligne dynamique. Cela permet d'accélérer la migration et de réussir la migration vers Aurora. Pour plus d'informations, consultez Bonnes pratiques de migration des bases de données MySQL vers Amazon Aurora.

Utilisation d'AWS Database Migration Service (AWS DMS) : vous pouvez utiliser AWS DMS pour importer des données des environnements sur site dans AWS. DMS propose à la fois des migrations homogènes et hétérogènes avec une interruption minime. DMS propose les types de migration suivants :

  • Migration des données existantes (chargement complet) : transfère les données existantes de l'instance de base de données source vers l'instance de base de données cible. Il s'agit d'un chargement ponctuel, et il est similaire aux options d'importation et d'exportation répertoriées précédemment. Ce type de migration est préférable pour les petites et moyennes bases de données qui ne peuvent pas être arrêtées longtemps.
  • Migration de données existantes et réplication des modifications en cours (chargement complet + capture des données modifiées (CDC, Change Data Capture)) : pour migrer les données avec une interruption minime, AWS DMS peut migrer les données existantes et répliquer les données modifiées de la source vers la cible jusqu'au basculement. Ce type de migration est préférable pour les petites et moyennes bases de données qui nécessitent une interruption minime qui ne dure que le temps du basculement.
  • Réplication des modifications des données uniquement (CDC, Change Data Capture) : utilisez l'efficacité des outils d'importation et d'exportation natives pour migrer les données existantes et configurer une tâche uniquement CDC qui capture les modifications en cours de la source vers la cible. Le paramètre d'heure de début personnalisée CDC spécifie le point dans le temps pour démarrer la synchronisation des données. Ce type de migration est préférable pour les moyennes et grandes bases de données qui requièrent des interruptions ne durant que le temps du basculement.