Comment migrer vers une instance Amazon RDS ou Amazon Aurora DB en utilisant AWS DMS ?

Dernière mise à jour : 2022-10-19

Utiliser Amazon Relational Database Service (Amazon RDS) pour la migration de bases de données vers Amazon Aurora. Comment puis-je le faire avec un temps d'arrêt minimal ?

Brève description

Remarque : Si vous procédez à une migration homogène, utilisez les outils natifs de votre moteur (tels que l'outil de vidage ou de réplication MySQL) lorsque cela est possible.

Pour migrer vers une instance de base de données Amazon RDS à l'aide d'AWS DMS :

  • Créer une instance de réplication
  • créez des points de terminaison cible et source ;
  • actualisez les schémas de point de terminaison source ;
  • créez une tâche de migration ;
  • Surveiller votre tâche de migration

Vous pouvez utiliser ces étapes pour tous les types de moteurs Amazon RDS et Amazon Aurora, y compris les instances de base de données Amazon RDS for Oracle et Amazon Aurora pour MySQL.

Solution

Remarque : AWS DMS crée seulement une table avec une clé primaire sur la cible si nécessaire avant la migration des données de la table. Pour générer un schéma cible complet, utilisez l’outil de conversion des schémas AWS (AWS SCT). Pour plus d'informations, consultez Conversion de schémas.

(Facultatif) Activation de la journalisation avec Amazon CloudWatch

Amazon CloudWatch Logs peut vous prévenir de problèmes potentiels lors de la migration. Pour plus d'informations, consultez Surveillance des tâches de réplication en utilisant Amazon CloudWatch.

Créer une instance de réplication

  1. Ouvrez la console AWS DMS, puis choisissez Instances de réplication à partir du volet de navigation.
  2. Sélectionnez « Create replication instance » (Créer une instance de réplication).
  3. Saisissez le nom, la description, la classe d'instance, Amazon Virtual Private Cloud (Amazon VPC) et la préférence Multi-AZ de votre réplication.
    Remarque : Assurez-vous de choisir une classe d'instance suffisante pour votre charge de travail de migration. Si l'instance n'est pas suffisante pour votre charge de travail, vous pouvez modifier l'instance de réplication ultérieurement.
  4. Dans la section Avancé, choisissez vos groupes de sécurité VPC ou conservez l'option par défaut.
  5. Choisissez Créer instance de réplication.

Créez des points de terminaison source et cible

  1. Ouvrez la console AWS DMS, puis choisissez Points de terminaison à partir du volet de navigation.
  2. Sélectionnez Create endpoint (Créer un point de terminaison) pour créer les bases de données source et cible.
  3. Au moment de définir le paramètre Endpoint type (Type de point de terminaison), sélectionnez Source.
  4. Entrez les informations spécifiques du point de terminaison.
  5. Choisissez Exécuter un test.
  6. Lorsque le test est terminé, choisissez Save (Enregistrer).
  7. Répétez les étapes 3 à 6, mais pour Type de point de terminaison, choisissez Cible.
    Remarque : Assurez-vous d'effectuer ces étapes pour la cible et la source.

Actualiser les schémas de point de terminaison source<b></b>

  1. Ouvrez la console AWS DMS, puis choisissez Points de terminaison à partir du volet de navigation.
  2. Sélectionnez le point de terminaison source, puis Refresh schemas (Actualiser les schémas).
  3. Sélectionnez Refresh schemas (Actualiser les schémas).
    Remarque : Vous devez actualiser la source afin que les schémas sources apparaissent dans les mappages de table lorsque vous créez une tâche AWS DMS.

Créer une tâche de migration

  1. Ouvrez la console d'AWS DMS, puis choisissez Tâches de migration de base de données dans le volet de navigation.
  2. Choisissez Créer une tâche.
  3. Précisez les informations suivantes : Identifiant de tâche, Instance de réplication, Point de terminaison de base de données source, Point de terminaison de base de données cible et Type de migration. Choisissez un des types de migration suivants :
    Migrate existing data only (Migration des données existantes uniquement) : utilisez ce type de migration pour des migrations ponctuelles.
    Migrer les données existantes et répliquer les changements en cours - Utilisez ce type de migration pour migrer de grandes bases de données vers le cloud AWS avec un temps d'arrêt minimal.
    Migrer les modifications de réplication continue : Utilisez ce type de migration lorsque vous avez déjà migré vos données et que vous souhaitez synchroniser la base de données source avec la base de données MySQL cible hébergée sur le cloud AWS.
  4. Dans la section Paramètres de tâche, modifiez la tâche si nécessaire.
  5. Dans la section Table mappings, choisissez Guided UI.
  6. Sélectionnez Ajouter une nouvelle règle de sélection et indiquez le Nom de votre table et votre Schéma.
    Remarque : Vous pouvez modifier ou transformer le schéma source, le nom de table ou de colonne de certains ou de tous les objets sélectionnés. Pour ce faire, développez la section Règles de transformation. Sélectionnez Ajouter une règle de transformation. Sélectionnez ensuite Target (Cible), Schema name (Nom du schéma) et Action.
  7. Sélectionnez Créer une tâche.

Remarque : Si vous utilisez des colonnes LOB, le Mode LOB limité. Pour en savoir plus, consultez la section Configurer la prise en charge LOB pour les bases de données sources dans une tâche AWS DMS.

Surveiller votre tâche de migration

  1. La vue Surveillance des tâches permet de surveiller les tâches de migration. Vous pouvez voir quelles sont les tables pour lesquelles la migration est terminée et sont celles dont la migration est toujours en cours. Faites attention aux types de message suivants :
    I : indique un message d'information
    W : indique des avertissements
    E : indique des erreurs qui se sont produites lors de la migration de la base de données
  2. Vérifiez que les bases de données ont été migrées avec succès en vous connectant aux instance source et cible via le terminal.

Migration Oracle

Lorsque vous utilisez Oracle comme base de données source, AWS DMS migre la table vers l'utilisateur de point de terminaison cible spécifié. Vous pouvez modifier le schéma pour une cible Oracle en utilisation les règles de transformation. Pour plus d'informations, consultez Modification de l'utilisateur et du schéma pour une cible Oracle.

Migration vers MySQL/PostgreSQL/SQL Server

Au cours d'une migration, les schémas et les tables sont migrés avec les mêmes noms vers la cible. Si vous souhaitez migrer des tables vers une cible ou un schéma différent, créez une règle de mappage pour spécifier le nouveau schéma sur la base de données cible.

{
  "rules": [{
      "rule-type": "selection",
      "rule-id": "1",
      "rule-name": "1",
      "object-locator": {
        "schema-name": "test",
        "table-name": "%"
      },
      "rule-action": "include"
    }, {
      "rule-type": "transformation",
      "rule-id": "2",
      "rule-name": "2",
      "rule-action": "rename",
      "rule-target": "schema",
      "object-locator": {
        "schema-name": "test"
      },
      "value": "newtest"
    }
  ]
}

Vérifiez les journaux pour vérifier qu'il n'y a pas d'erreur.

Surveillez la latence et comparez le nombre de données dans les bases de données source et cible avant de basculer vers la nouvelle base de données cible. Dépannage des tâches de migration dans AWS Database Migration Service.