

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.

# Migration de données à partir d'une instance de base de données RDS MySQL vers un cluster de base de données Amazon Aurora MySQL
<a name="AuroraMySQL.Migrating.RDSMySQL"></a>

Vous pouvez migrer (copier) les données directement d'un cluster de base de données Amazon Aurora MySQL vers une instance de base de données RDS for MySQL.

**Topics**
+ [Migration d’un instantané RDS for MySQL vers Aurora](AuroraMySQL.Migrating.RDSMySQL.Snapshot.md)
+ [Migration des données d’une instance de base de données RDS for MySQL vers un cluster de bases de données Amazon Aurora MySQL à l’aide d’un réplica en lecture Aurora](AuroraMySQL.Migrating.RDSMySQL.Replica.md)

**Note**  
Étant donné qu'Amazon Aurora MySQL est compatible avec MySQL, vous pouvez migrer les données de votre base de données MySQL en configurant la réplication entre votre base de données MySQL et un cluster de base de données Amazon Aurora MySQL. Pour de plus amples informations, veuillez consulter [Réplication avec Amazon Aurora](Aurora.Replication.md).

# Migration d’un instantané RDS for MySQL vers Aurora
<a name="AuroraMySQL.Migrating.RDSMySQL.Snapshot"></a>

Vous pouvez migrer un instantané de bases de données d’une instance de base de données RDS for MySQL pour créer un cluster de bases de données Aurora MySQL. Le nouveau cluster de bases de données Aurora MySQL est rempli avec les données de l’instance de base de données RDS for MySQL initiale. L’instantané de base de données doit avoir été effectué à partir d’une instance de base de données Amazon RDS exécutant une version MySQL compatible avec Aurora MySQL.

Vous pouvez migrer un instantané de base de données manuel ou automatique. Après que le cluster DB a été créé, vous pouvez créer des réplicas Aurora facultatifs.

**Note**  
Vous pouvez également migrer une instance de base de données RDS for MySQL vers un cluster de bases de données Aurora MySQL en créant un réplica en lecture Aurora de votre instance de base de données RDS for MySQL source. Pour plus d’informations, consultez [Migration des données d’une instance de base de données RDS for MySQL vers un cluster de bases de données Amazon Aurora MySQL à l’aide d’un réplica en lecture Aurora](AuroraMySQL.Migrating.RDSMySQL.Replica.md).  
Vous ne pouvez pas migrer de certaines anciennes versions de MySQL 8.0, notamment des versions 8.0.11, 8.0.13 et 8.0.15, vers Aurora MySQL 3.05 et versions ultérieures. Nous vous recommandons de passer à MySQL version 8.0.28 avant de procéder à la migration.

Les étapes générales à suivre sont les suivantes :

1. Déterminez la quantité d’espace à allouer à votre cluster de bases de données Aurora MySQL. Pour de plus amples informations, consultez [De quel espace ai-je besoin ?](#AuroraMySQL.Migrating.RDSMySQL.Space).

1. Utilisez la console pour créer le snapshot dans la AWS région où se trouve l'instance Amazon RDS MySQL. Pour plus d’informations sur la création d’un instantané de base de données, consultez [Création d’un instantané de base de données](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).

1. Si l'instantané de base de données ne se trouve pas dans la même AWS région que votre cluster de base de données, utilisez la console Amazon RDS pour copier l'instantané de base de données AWS dans cette région. Pour plus d’informations sur la copie d’un instantané de base de données, consultez [Copie d’un instantané](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html).

1. Utilisez la console pour migrer l’instantané de bases de données et créer un cluster de bases de données Aurora MySQL avec les mêmes bases de données que l’instance de base de données MySQL initiale. 

**Avertissement**  
Amazon RDS limite chaque AWS compte à une copie instantanée dans chaque AWS région à la fois.

## De quel espace ai-je besoin ?
<a name="AuroraMySQL.Migrating.RDSMySQL.Space"></a>

Lorsque vous migrez un instantané d’une instance de base de données MySQL vers un cluster de bases de données Aurora MySQL, Aurora utilise un volume Amazon Elastic Block Store (Amazon EBS) pour mettre en forme les données de l’instantané avant de les migrer. Dans certains cas, un espace supplémentaire est nécessaire pour mettre en forme les données de la migration.

Les tables autres que les tables MyISAM et qui ne sont pas compressées peuvent atteindre jusqu’à 16 To. Si vous avez des tables MyISAM, Aurora doit utiliser un espace supplémentaire du volume pour rendre ces tables compatibles avec Aurora MySQL. Si vous avez compressé les tables, Aurora doit utiliser un espace supplémentaire du volume pour développer ces tables avant de les stocker sur le volume de cluster Aurora. En raison de cette exigence d’espace supplémentaire, vous devez vous assurer qu’aucune des tables MyISAM et compressées, migrées depuis votre instance de base de données MySQL, ne dépasse 8 To en taille.

## Réduction de la quantité d’espace requise pour migrer les données vers Amazon Aurora MySQL
<a name="AuroraMySQL.Migrating.RDSMySQL.PreImport"></a>

Il se peut que vous souhaitiez modifier votre schéma de base de données avant la migration vers Amazon Aurora. Cette modification peut être utile dans les cas suivants : 
+ Vous voulez accélérer le processus de migration.
+ Vous avez un doute quant à la quantité d’espace que vous devez allouer.
+ Vous avez tenté de migrer vos données et la migration a échoué en raison d’un manque d’espace alloué.

Vous pouvez effectuer les modifications suivantes pour améliorer le processus de migration d’une base de données vers Amazon Aurora.

**Important**  
Veillez à effectuer ces mises à jour sur une nouvelle instance de base de données restaurée à partir d’un instantané d’une base de données de production, plutôt que sur une instance de production. Vous pouvez ensuite migrer les données depuis l’instantané de votre nouvelle instance de base de données vers votre cluster de bases de données Aurora pour éviter toute interruption de service sur votre base de données de production.


| Type de table | Limitation ou instruction | 
| --- | --- | 
|  Tables MyISAM  |  Aurora MySQL prend uniquement en charge les tables InnoDB. Si vous avez des tables MyISAM dans votre base de données, elles doivent être converties avant d’être migrées vers Aurora MySQL. Le processus de conversion nécessite un espace supplémentaire pour la conversion de MyISAM en InnoDB pendant la procédure de migration. Pour réduire le risque d’un espace insuffisant ou pour accélérer le processus de migration, convertissez toutes vos tables MyISAM en tables InnoDB avant de les migrer. La taille de la table InnoDB obtenue est équivalente à celle requise par Aurora MySQL pour cette table. Pour convertir une table MyISAM en InnoDB, exécutez la commande suivante :  `alter table <schema>.<table_name> engine=innodb, algorithm=copy;`   | 
|  Tables compressées  |  Aurora MySQL ne prend pas en charge les tables compressées (c’est-à-dire les tables créées avec `ROW_FORMAT=COMPRESSED`).  Pour réduire le risque d’un espace insuffisant ou pour accélérer le processus de migration, développez vos tables compressées en définissant `ROW_FORMAT` sur `DEFAULT`, `COMPACT`, `DYNAMIC` ou `REDUNDANT`. Pour plus d’informations, consultez [Formats de ligne InnoDB](https://dev.mysql.com/doc/refman/8.0/en/innodb-row-format.html) dans la documentation sur MySQL.  | 

Vous pouvez utiliser le script SQL suivant sur votre instance de base de données MySQL existante pour afficher les tables de votre base de données qui sont des tables MyISAM ou des tables compressées.

```
-- This script examines a MySQL database for conditions that block
-- migrating the database into Amazon Aurora.
-- It needs to be run from an account that has read permission for the
-- INFORMATION_SCHEMA database.

-- Verify that this is a supported version of MySQL.

select msg as `==> Checking current version of MySQL.`
from
  (
  select
    'This script should be run on MySQL version 5.6 or higher. ' +
    'Earlier versions are not supported.' as msg,
    cast(substring_index(version(), '.', 1) as unsigned) * 100 +
      cast(substring_index(substring_index(version(), '.', 2), '.', -1)
      as unsigned)
    as major_minor
  ) as T
where major_minor <> 506;


-- List MyISAM and compressed tables. Include the table size.

select concat(TABLE_SCHEMA, '.', TABLE_NAME) as `==> MyISAM or Compressed Tables`,
round(((data_length + index_length) / 1024 / 1024), 2) "Approx size (MB)"
from INFORMATION_SCHEMA.TABLES
where
  ENGINE <> 'InnoDB'
  and
  (
    -- User tables
    TABLE_SCHEMA not in ('mysql', 'performance_schema',
                         'information_schema')
    or
    -- Non-standard system tables
    (
      TABLE_SCHEMA = 'mysql' and TABLE_NAME not in
        (
          'columns_priv', 'db', 'event', 'func', 'general_log',
          'help_category', 'help_keyword', 'help_relation',
          'help_topic', 'host', 'ndb_binlog_index', 'plugin',
          'proc', 'procs_priv', 'proxies_priv', 'servers', 'slow_log',
          'tables_priv', 'time_zone', 'time_zone_leap_second',
          'time_zone_name', 'time_zone_transition',
          'time_zone_transition_type', 'user'
        )
    )
  )
  or
  (
    -- Compressed tables
       ROW_FORMAT = 'Compressed'
  );
```

Le script produit un résultat similaire à celui de l’exemple suivant. L’exemple suivant propose deux tables qui doivent être converties de MyISAM en InnoDB. Le résultat inclut aussi la taille approximative de chaque table en mégaoctets (Mo). 

```
+---------------------------------+------------------+
| ==> MyISAM or Compressed Tables | Approx size (MB) |
+---------------------------------+------------------+
| test.name_table                 |          2102.25 |
| test.my_table                   |            65.25 |
+---------------------------------+------------------+
2 rows in set (0.01 sec)
```

## Migration d’un instantané de base de données RDS for MySQL vers un cluster de bases de données Aurora MySQL
<a name="migrate-snapshot-ams-cluster"></a>

Vous pouvez migrer un instantané de base de données d'une instance de base de données RDS pour MySQL afin de créer un cluster de base de données Aurora MySQL à l'aide du AWS Management Console ou du AWS CLI. Le nouveau cluster de bases de données Aurora MySQL est rempli avec les données de l’instance de base de données RDS for MySQL initiale. Pour plus d’informations sur la création d’un instantané de base de données, consultez [Création d’un instantané de base de données](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).

Si l'instantané de base de données ne se trouve pas dans la AWS région où vous souhaitez localiser vos données, copiez-le AWS dans cette région. Pour plus d’informations sur la copie d’un instantané de base de données, consultez [Copie d’un instantané](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html).

### Console
<a name="AuroraMySQL.Migrating.RDSMySQL.Import.Console"></a>

Lorsque vous migrez le snapshot de base de données à l'aide de AWS Management Console, la console prend les mesures nécessaires pour créer uniquement le cluster de base de données.

Vous pouvez aussi choisir que votre nouveau cluster de bases de données Aurora MySQL soit chiffré au repos à l’aide d’une AWS KMS key.

**Pour migrer un instantané de base de données MySQL à l'aide du AWS Management Console**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Commencez la migration à partir de l’instance de base de données MySQL ou de l’instantané :

   Pour lancer la migration à partir de l’instance de base de données :

   1. Dans le panneau de navigation, choisissez **Bases de données**, puis sélectionnez l’instance de base de données MySQL.

   1. Pour **Actions**, choisissez **Migrer l’instantané le plus récent**.

   Pour lancer la migration à partir de l’instantané :

   1. Choisissez **Instantanés**.

   1. Sur la page **Instantanés**, choisissez l’instantané que vous voulez migrer vers un cluster de bases de données Aurora MySQL.

   1. Choisissez **Actions d’instantané**, puis **Migrer l’instantané**.

   La page **Migrer la base de données** apparaît.

1. Définissez les valeurs suivantes dans la page **Migrer la base de données** :
   + **Migrate to DB Engine** : sélectionnez `aurora`.
   + **Version du moteur de base de données** : sélectionnez la version du moteur de base de données pour le cluster de bases de données Aurora MySQL.
   + **Classe d’instance de base de données** : sélectionnez une classe d’instance de base de données qui possède le stockage et la capacité requis pour votre base de données. Par exemple, `db.r3.large`. Les volumes de cluster Aurora croissent automatiquement au fur et à mesure que la quantité de données de votre base de données augmente. Un volume de cluster Aurora peut croître jusqu’à la taille maximale de 128 tébioctets (Tio). Par conséquent, vous devez uniquement sélectionner une classe d’instance de base de données qui correspond à vos besoins de stockage actifs. Pour de plus amples informations, veuillez consulter [Présentation du stockage Amazon Aurora](Aurora.Overview.StorageReliability.md#Aurora.Overview.Storage).
   + **Identifiant d'instance** de base de données : entrez un nom pour le cluster de base de données unique pour votre compte dans la AWS région que vous avez sélectionnée. Cet identifiant est utilisé dans les adresses de point de terminaison des instances de votre cluster DB. Vous pouvez choisir d'ajouter des informations au nom, par exemple en incluant la AWS région et le moteur de base de données que vous avez sélectionnés, par exemple**aurora-cluster1**.

     L’identifiant d’instance de base de données obéit aux contraintes suivantes :
     + Il doit contenir entre 1 et 63 caractères alphanumériques ou traits d’union.
     + Son premier caractère doit être une lettre.
     + Il ne peut pas se terminer par un trait d’union ou contenir deux traits d’union consécutifs.
     + Il doit être unique pour toutes les instances de base de données par AWS compte et par AWS région.
   + **Virtual Private Cloud (VPC)** : si vous disposez d’un VPC existant, vous pouvez l’utiliser avec votre cluster de bases de données Aurora MySQL en sélectionnant l’identifiant de votre VPC, par exemple `vpc-a464d1c1`. Pour plus d’informations sur la création d’un VPC, consultez [Tutoriel : Création d'un VPC à utiliser avec un cluster d' de base de données (uniquement) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md).

     Sinon, vous pouvez choisir de demander à Aurora de créer un VPC pour vous en sélectionnant **Créer un VPC**. 
   + **Groupe de sous-réseaux de base de données** : si vous disposez d’un groupe de sous-réseaux existant, vous pouvez l’utiliser avec votre cluster de bases de données Aurora MySQL en sélectionnant l’identifiant de votre groupe de sous-réseaux, par exemple `gs-subnet-group1`.

     Sinon, vous pouvez choisir de demander à Aurora de créer un groupe de sous-réseaux pour vous en sélectionnant **Create a new subnet group (Créer un groupe de sous-réseaux)**. 
   + **Accessible publiquement** : sélectionnez **Non** pour spécifier que les instances de votre cluster de bases de données ne sont accessibles que par les ressources situées à l’intérieur de votre VPC. Sélectionnez **Oui** pour spécifier que les instances de votre cluster de bases de données sont accessibles par les ressources du réseau public. La valeur par défaut est **Oui**.
**Note**  
Il n’est pas nécessaire que votre cluster de bases de données de production se trouve dans un sous-réseau public, parce que seuls vos serveurs d’applications nécessitent l’accès à votre cluster de bases de données. Si votre cluster de bases de données n’a pas besoin d’être dans un sous-réseau public, définissez **Accessible publiquement** sur **Non**.
   + **Zone de disponibilité** : sélectionnez la zone de disponibilité devant héberger l’instance principale de votre cluster de bases de données Aurora MySQL. Pour laisser Aurora choisir une zone de disponibilité à votre place, sélectionnez **Aucune préférence**.
   + **Port de la base de données** : saisissez le port par défaut à utiliser lors de la connexion aux instances du cluster de bases de données Aurora MySQL. La valeur par défaut est `3306`.
**Note**  
Il se peut que vous soyez derrière un pare-feu d’entreprise qui n’autorise pas l’accès aux ports par défaut, tels que le port par défaut MySQL 3306. Dans ce cas, fournissez une valeur de port que votre pare-feu d’entreprise autorise. Souvenez-vous plus tard de cette valeur de port lorsque vous vous connecterez au cluster de bases de données Aurora MySQL.
   + **Chiffrement** : choisissez **Activer le chiffrement** pour que votre nouveau cluster de bases de données Aurora MySQL soit chiffré au repos. Si vous choisissez **Activer le chiffrement**, vous devez choisir une clé KMS comme valeur de **AWS KMS key**.

     Si votre instantané de base de données n’est pas chiffré, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos.

     Si votre instantané de base de données est chiffré, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos avec la clé de chiffrement spécifiée. Vous pouvez spécifier la clé de chiffrement utilisée par l’instantané de bases de données ou une clé différente. Vous ne pouvez pas créer de cluster de bases de données non chiffré à partir d’un instantané de base de données chiffré.
   + **Mise à niveau automatique des versions mineures** : ce paramètre ne s’applique pas aux clusters de bases de données Aurora MySQL.

     Pour plus d’informations sur les mises à jour de moteur pour Aurora MySQL, consultez [Mises à jour du moteur de base de données pour Amazon Aurora MySQLVersions à long terme (LTS) et versions bêta d’Amazon Aurora MySQL](AuroraMySQL.Updates.md).

1. Choisissez **Migrer** pour migrer votre instantané de base de données. 

1. Sélectionnez **Instances**, puis choisissez l’icône en forme de flèche pour afficher les détails du cluster DB et surveiller la progression de la migration. Sur la page des détails, vous pouvez trouver le point de terminaison du cluster utilisé pour se connecter à l’instance principale du cluster de bases de données. Pour plus d’informations sur la connexion à un cluster de bases de données Aurora MySQL, consultez [Connexion à un cluster de bases de données Amazon Aurora](Aurora.Connecting.md). 

### AWS CLI
<a name="USER_ImportAuroraCluster.CLI"></a>

Vous pouvez créer un cluster de bases de données Aurora à partir d’un instantané de bases de données d’une instance de base de données RDS for MySQL par l’intermédiaire de la commande [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-from-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-from-snapshot.html) avec les paramètres suivants :
+ `--db-cluster-identifier` : nom du cluster de bases de données à créer.
+ `--engine aurora-mysql` : pour un cluster de bases de données compatible avec MySQL 5.7 ou 8.0.
+ `--kms-key-id`— Le AWS KMS key pour chiffrer éventuellement le cluster de base de données, selon que votre instantané de base de données est crypté ou non.
  + Si votre instantané de base de données n’est pas chiffré, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos. Sinon, votre cluster de bases de données ne sera pas chiffré.
  + Si votre instantané de base de données est chiffré, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos avec la clé de chiffrement spécifiée. Sinon, votre cluster de bases de données est chiffré au repos avec la clé de chiffrement de l’instantané de base de données.
**Note**  
Vous ne pouvez pas créer de cluster de bases de données non chiffré à partir d’un instantané de base de données chiffré.
+ `--snapshot-identifier` : l’Amazon Resource Name (ARN) de l’instantané de bases de données à migrer. Pour plus d'informations sur Amazon RDS ARNs, consultez [Amazon Relational Database Service (Amazon](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-rds) RDS).

Lorsque vous migrez l’instantané de bases de données à l’aide de la commande `RestoreDBClusterFromSnapshot`, celle-ci crée le cluster de bases de données et l’instance principale.

Dans cet exemple, vous créez un cluster de base de données compatible avec MySQL 5.7 nommé *mydbcluster* à partir d'un instantané de base de données avec un ARN défini sur. *mydbsnapshotARN*

Pour Linux, macOS ou Unix :

```
aws rds restore-db-cluster-from-snapshot \
    --db-cluster-identifier mydbcluster \
    --snapshot-identifier mydbsnapshotARN \
    --engine aurora-mysql
```

Pour Windows :

```
aws rds restore-db-cluster-from-snapshot ^
    --db-cluster-identifier mydbcluster ^
    --snapshot-identifier mydbsnapshotARN ^
    --engine aurora-mysql
```

Dans cet exemple, vous créez un cluster de base de données compatible avec MySQL 5.7 nommé *mydbcluster* à partir d'un instantané de base de données avec un ARN défini sur. *mydbsnapshotARN*

Pour Linux, macOS ou Unix :

```
aws rds restore-db-cluster-from-snapshot \
    --db-cluster-identifier mydbcluster \
    --snapshot-identifier mydbsnapshotARN \
    --engine aurora-mysql
```

Pour Windows :

```
aws rds restore-db-cluster-from-snapshot ^
    --db-cluster-identifier mydbcluster ^
    --snapshot-identifier mydbsnapshotARN ^
    --engine aurora-mysql
```

# Migration des données d’une instance de base de données RDS for MySQL vers un cluster de bases de données Amazon Aurora MySQL à l’aide d’un réplica en lecture Aurora
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica"></a>

Aurora utilise la fonctionnalité de réplication de journaux binaires des moteurs de base de données MySQL pour créer un type spécial de cluster de bases de données appelé un réplica en lecture Aurora pour une instance de base de données RDS for MySQL source. Les mises à jour apportées à l’instance de base de données RDS for MySQL source sont répliquées de façon asynchrone sur le réplica en lecture Aurora.

Nous vous recommandons d’utiliser cette fonctionnalité pour effectuer une migration d’une instance de base de données RDS for MySQL vers un cluster de bases de données Aurora MySQL en créant un réplica en lecture Aurora de votre instance de base de données RDS for MySQL source. Lorsque le retard du réplica entre l’instance de base de données RDS for MySQL et le réplica en lecture Aurora est égal à 0, vous pouvez diriger vos applications clientes vers le réplica en lecture Aurora, puis arrêter la réplication pour transformer le réplica en lecture Aurora en cluster de bases de données Aurora MySQL autonome. La migration peut prendre du temps, environ quelques heures par téraoctets (Tio) de données.

Pour obtenir la liste des régions où Aurora est disponible, consultez [Amazon Aurora](https://docs.aws.amazon.com/general/latest/gr/rande.html#aurora) dans la *Références générales AWS*.

Lorsque vous créez un réplica en lecture Aurora d’une instance de base de données RDS for MySQL, Amazon RDS crée un instantané de base de données de votre instance de base de données RDS for MySQL source (privé pour Amazon RDS et sans frais). Amazon RDS migre ensuite les données de l’instantané de base de données vers le réplica en lecture Aurora. Une fois que les données de l’instantané de base de données ont été migrées vers le nouveau cluster de bases de données Aurora MySQL, Amazon RDS démarre la réplication entre votre instance de base de données RDS for MySQL et le cluster de bases de données Aurora MySQL. Si votre instance de base de données RDS for MySQL contient des tables qui utilisent des moteurs de stockage autres qu’InnoDB ou qui utilisent un format de ligne compressé, vous pouvez accélérer le processus de création d’un réplica en lecture Aurora. Pour cela, il faut modifier ces tables pour utiliser le moteur de stockage InnoDB et le format de ligne dynamique avant de créer votre réplica en lecture Aurora. Pour plus d’informations sur le processus de copie d’un instantané de base de données MySQL vers un cluster de bases de données Aurora MySQL, consultez [Migration de données à partir d'une instance de base de données RDS MySQL vers un cluster de base de données Amazon Aurora MySQL](AuroraMySQL.Migrating.RDSMySQL.md).

Vous ne pouvez avoir qu’un seul réplica en lecture Aurora pour une instance de base de données RDS for MySQL.

**Note**  
Des problèmes de réplication peuvent survenir en raison de différences de fonctionnalités entre Aurora MySQL et la version du moteur de base de données MySQL de votre instance de base de données RDS for MySQL qui est l’instance principale de réplication. Si vous rencontrez une erreur, vous pouvez trouver de l'aide [sur le forum de la communauté Amazon RDS](https://forums.aws.amazon.com/forum.jspa?forumID=60) ou en contactant AWS Support.  
Vous ne pouvez pas créer de réplica en lecture Aurora si votre instance de base de données RDS for MySQL est déjà la source d’un réplica en lecture entre régions.  
Vous ne pouvez pas migrer de certaines anciennes versions de RDS for MySQL 8.0, notamment des versions 8.0.11, 8.0.13 et 8.0.15, vers Aurora MySQL 3.05 et versions ultérieures. Nous vous recommandons de passer à RDS for MySQL version 8.0.28 avant de procéder à la migration.

Pour plus d’informations sur les réplicas en lecture MySQL, consultez [Utilisation des réplicas en lecture des instances de base de données MariaDB, MySQL et PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html).

## Création d'un réplica en lecture Aurora
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Create"></a>

Vous pouvez créer une réplique de lecture Aurora pour une instance de base de données RDS pour MySQL à l'aide de la console, de l' AWS CLI API RDS ou de l'API RDS.

### Console
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Create.Console"></a>

**Pour créer un réplica en lecture Aurora à partir d’une instance de base de données RDS for MySQL source**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le panneau de navigation, choisissez **Databases (Bases de données)**. 

1. Choisissez l’instance de base de données MySQL que vous souhaitez utiliser comme source pour votre réplica en lecture Aurora.

1. Sous **Actions**, choisissez **Créer un réplica en lecture Aurora**.

1. Choisissez les spécifications de cluster de bases de données que vous voulez utiliser pour le réplica en lecture Aurora, comme décrit dans le tableau suivant.     
<a name="aurora_read_replica_param_advice"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Migrating.RDSMySQL.Replica.html)

1. Choisissez **Créer un réplica en lecture**.

### AWS CLI
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Create.CLI"></a>

Pour créer une réplique de lecture Aurora à partir d'une instance de base de données RDS pour MySQL source, utilisez les [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) AWS CLI commandes [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html)and pour créer un nouveau cluster de base de données Aurora MySQL. Quand vous appelez la commande `create-db-cluster`, incluez le paramètre `--replication-source-identifier` pour identifier l’Amazon Resource Name (ARN) de l’instance de base de données MySQL source. Pour plus d'informations sur Amazon RDS ARNs, consultez [Amazon Relational Database Service (Amazon](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-rds) RDS).

Ne spécifiez pas le nom d’utilisateur principal, le mot de passe principal ni le nom de base de données, car le réplica en lecture Aurora utilise les mêmes nom d’utilisateur principal, mot de passe principal et nom de base de données que l’instance de base de données MySQL source. 

Pour Linux, macOS ou Unix :

```
aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora \
    --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 \
    --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:primary-mysql-instance
```

Pour Windows :

```
aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora ^
    --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 ^
    --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:primary-mysql-instance
```

Si vous utilisez la console pour créer un réplica en lecture Aurora, Aurora crée automatiquement l’instance principale de votre réplica en lecture Aurora de cluster de bases de données. Si vous utilisez le AWS CLI pour créer une réplique de lecture Aurora, vous devez créer explicitement l'instance principale pour votre cluster de bases de données. L’instance principale est la première instance créée dans un cluster de bases de données.

Vous pouvez créer une instance principale pour votre cluster de base de données à l'aide de la [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) AWS CLI commande avec les paramètres suivants.
+ `--db-cluster-identifier`

  Nom du cluster de bases de données.
+ `--db-instance-class`

  Nom de la classe d’instance de base de données à utiliser pour votre instance principale.
+ `--db-instance-identifier`

  Nom de votre instance principale.
+ `--engine aurora`

Dans cet exemple, vous créez une instance principale nommée d'après le cluster *myreadreplicainstance* de base de données nommé*myreadreplicacluster*, en utilisant la classe d'instance de base de données spécifiée dans*myinstanceclass*.

**Example**  
Pour Linux, macOS ou Unix :  

```
aws rds create-db-instance \
    --db-cluster-identifier myreadreplicacluster \
    --db-instance-class myinstanceclass \
    --db-instance-identifier myreadreplicainstance \
    --engine aurora
```
Pour Windows :  

```
aws rds create-db-instance ^
    --db-cluster-identifier myreadreplicacluster ^
    --db-instance-class myinstanceclass ^
    --db-instance-identifier myreadreplicainstance ^
    --engine aurora
```

### API RDS
<a name="Aurora.Migration.RDSMySQL.Create.API"></a>

Pour créer un réplica en lecture Aurora à partir d’une instance de base de données RDS for MySQL source, utilisez les commandes d’API Amazon RDS [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html) et [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) afin de créer un nouveau cluster de bases de données Aurora et une instance principale. N’indiquez pas le nom d’utilisateur principal, le mot de passe principal ni le nom de base de données, car le réplica en lecture Aurora utilise les mêmes nom d’utilisateur principal, mot de passe principal et nom de base de données que l’instance de base de données RDS for MySQL source. 

Vous pouvez créer un nouveau cluster de bases de données Aurora pour un réplica en lecture Aurora à partir d’une instance de base de données RDS for MySQL source à l’aide de la commande d’API Amazon RDS [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html) avec les paramètres suivants :
+ `DBClusterIdentifier`

  Nom du cluster de bases de données à créer.
+ `DBSubnetGroupName`

  Nom du groupe de sous-réseaux de base de données à associer à ce cluster de bases de données.
+ `Engine=aurora`
+ `KmsKeyId`

  Le AWS KMS key avec lequel chiffrer éventuellement le cluster de base de données, selon que votre instance de base de données MySQL est cryptée ou non.
  + Si votre instance de base de données MySQL n’est pas chiffrée, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos. Sinon, votre cluster de bases de données est chiffré au repos avec la clé de chiffrement par défaut de votre compte.
  + Si votre instance de base de données MySQL est chiffrée, spécifiez une clé de chiffrement de manière à ce que votre cluster de bases de données soit chiffré au repos avec la clé de chiffrement spécifiée. Sinon, votre cluster de bases de données est chiffré au repos avec la clé de chiffrement de l’instance de base de données MySQL.
**Note**  
Vous ne pouvez pas créer de cluster de bases de données non chiffré à partir d’une instance de base de données MySQL chiffrée.
+ `ReplicationSourceIdentifier`

  Amazon Resource Name (ARN) de l’instance de base de données MySQL source. Pour plus d'informations sur Amazon RDS ARNs, consultez [Amazon Relational Database Service (Amazon](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-rds) RDS). 
+ `VpcSecurityGroupIds`

  Liste des groupes de sécurité VPC EC2 à associer à ce cluster de bases de données.

Dans cet exemple, vous créez un cluster de base de données nommé *myreadreplicacluster* à partir d'une instance de base de données MySQL source avec un ARN défini sur*mysqlprimaryARN*, associé à un groupe de sous-réseaux de base de données nommé *mysubnetgroup* et à un groupe de sécurité VPC nommé. *mysecuritygroup*

**Example**  

```
https://rds.us-east-1.amazonaws.com/
    ?Action=CreateDBCluster
    &DBClusterIdentifier=myreadreplicacluster
    &DBSubnetGroupName=mysubnetgroup
    &Engine=aurora
    &ReplicationSourceIdentifier=mysqlprimaryARN
    &SignatureMethod=HmacSHA256
    &SignatureVersion=4
    &Version=2014-10-31
    &VpcSecurityGroupIds=mysecuritygroup
    &X-Amz-Algorithm=AWS4-HMAC-SHA256
    &X-Amz-Credential=AKIADQKE4SARGYLE/20150927/us-east-1/rds/aws4_request
    &X-Amz-Date=20150927T164851Z
    &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
    &X-Amz-Signature=6a8f4bd6a98f649c75ea04a6b3929ecc75ac09739588391cd7250f5280e716db
```

Si vous utilisez la console pour créer un réplica en lecture Aurora, Aurora crée automatiquement l’instance principale de votre réplica en lecture Aurora de cluster de bases de données. Si vous utilisez le AWS CLI pour créer une réplique de lecture Aurora, vous devez créer explicitement l'instance principale pour votre cluster de bases de données. L’instance principale est la première instance créée dans un cluster de bases de données.

Vous pouvez créer une instance principale pour votre cluster de bases de données en utilisant la commande d’API Amazon RDS [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) avec les paramètres suivants :
+ `DBClusterIdentifier`

  Nom du cluster de bases de données.
+ `DBInstanceClass`

  Nom de la classe d’instance de base de données à utiliser pour votre instance principale.
+ `DBInstanceIdentifier`

  Nom de votre instance principale.
+ `Engine=aurora`

Dans cet exemple, vous créez une instance principale nommée d'après le cluster *myreadreplicainstance* de base de données nommé*myreadreplicacluster*, en utilisant la classe d'instance de base de données spécifiée dans*myinstanceclass*.

**Example**  

```
https://rds.us-east-1.amazonaws.com/
    ?Action=CreateDBInstance
    &DBClusterIdentifier=myreadreplicacluster
    &DBInstanceClass=myinstanceclass
    &DBInstanceIdentifier=myreadreplicainstance
    &Engine=aurora
    &SignatureMethod=HmacSHA256
    &SignatureVersion=4
    &Version=2014-09-01
    &X-Amz-Algorithm=AWS4-HMAC-SHA256
    &X-Amz-Credential=AKIADQKE4SARGYLE/20140424/us-east-1/rds/aws4_request
    &X-Amz-Date=20140424T194844Z
    &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
    &X-Amz-Signature=bee4aabc750bf7dad0cd9e22b952bd6089d91e2a16592c2293e532eeaab8bc77
```

## Affichage d’un réplica en lecture Aurora
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.View"></a>

Vous pouvez afficher les relations de réplication MySQL vers Aurora MySQL de vos clusters de bases de données Aurora MySQL à l’aide de l’ AWS Management Console ou de l’ AWS CLI.

### Console
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.View.Console"></a>

**Pour afficher l’instance de base de données MySQL principale pour un réplica en lecture Aurora**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le panneau de navigation, choisissez **Databases (Bases de données)**. 

1. Sélectionnez le cluster de bases de données pour le réplica en lecture Aurora afin d’afficher ses détails. Les informations de l’instance de base de données MySQL principale figurent dans le champ **Replication source (Source de réplication)**.  
![\[Afficher MySQL principal\]](http://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/AuroraUserGuide/images/aurora-repl6.png)

### AWS CLI
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.View.CLI"></a>

Pour afficher les relations de réplication entre MySQL et Aurora MySQL pour vos clusters de bases de données Aurora MySQL à l' AWS CLI aide [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html)des [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html)commandes et. 

Pour déterminer quelles est l’instance de base de données MySQL principale, utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html) et indiquez l’identifiant de cluster du réplica en lecture Aurora pour l’option `--db-cluster-identifier`. Reportez-vous à l’élément `ReplicationSourceIdentifier` dans le résultat de l’ARN de l’instance de base de données qui est le principal de réplication. 

Pour déterminer quel cluster de bases de données est le réplica en lecture Aurora, utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) et indiquez l’identifiant d’instance de l’instance de base de données MySQL pour l’option `--db-instance-identifier`. Reportez-vous à l’élément `ReadReplicaDBClusterIdentifiers` dans la sortie de l’identifiant de cluster de bases de données du réplica en lecture Aurora. 

**Example**  
Pour Linux, macOS ou Unix :  

```
aws rds describe-db-clusters \
    --db-cluster-identifier myreadreplicacluster
```

```
aws rds describe-db-instances \
    --db-instance-identifier mysqlprimary
```
Pour Windows :  

```
aws rds describe-db-clusters ^
    --db-cluster-identifier myreadreplicacluster
```

```
aws rds describe-db-instances ^
    --db-instance-identifier mysqlprimary
```

## Promotion d’un réplica en lecture Aurora
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Promote"></a>

Une fois la migration terminée, vous pouvez promouvoir la réplique de lecture Aurora en cluster de base de données autonome à l'aide du AWS Management Console ou AWS CLI.

Vous pouvez ensuite diriger vos applications clientes vers le point de terminaison du réplica en lecture Aurora. Pour plus d’informations sur les points de terminaison Aurora, consultez [Connexions de point de terminaison Amazon Aurora](Aurora.Overview.Endpoints.md). La promotion doit s’achever rapidement, et vous pouvez lire le réplica en lecture Aurora ou écrire dans ce réplica lors de la promotion. Toutefois, vous ne pouvez pas supprimer l’instance de base de données MySQL principale, ni supprimer le lien entre l’instance de base de données et le réplica en lecture Aurora à ce moment-là.

Avant de promouvoir le réplica en lecture Aurora, arrêtez toute écriture sur l’instance de base de données MySQL source, puis attendez que le retard du réplica en lecture Aurora soit égal à 0. Vous pouvez afficher le retard de réplica pour un réplica en lecture Aurora en appelant la commande `SHOW SLAVE STATUS` (Aurora MySQL version 2) ou`SHOW REPLICA STATUS` (Aurora MySQL version 3) sur votre réplica en lecture Aurora. Vérifiez la valeur **Seconds behind master (Secondes de retard sur l’instance principale)**. 

Vous pouvez commencer à écrire dans le réplica en lecture Aurora une fois que les transactions d’écriture sur le réplica principal ont été interrompues et que le retard du réplica est égal à 0. Si vous écrivez dans le réplica en lecture Aurora en amont et que vous modifiez les tables qui sont également modifiées sur le principal MySQL, vous risquez d’interrompre la réplication sur Aurora. Si cela se produit, vous devez supprimer et recréer votre cluster en lecture Aurora.

### Console
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Promote.Console"></a>

**Pour promouvoir un réplica en lecture Aurora en cluster de bases de données Aurora**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le panneau de navigation, choisissez **Databases (Bases de données)**.

1. Sélectionnez le cluster de bases de données pour le réplica en lecture Aurora.

1. Pour **Actions**, choisissez **Promote (Promouvoir)**.

1. Sélectionnez **Promote read replica (Promouvoir le réplica en lecture)**.

Ensuite, vérifiez que la promotion est terminée à l’aide de la procédure suivante.

**Pour confirmer que le réplica en lecture Aurora a été promu**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le panneau de navigation, sélectionnez **Events**.

1. Sur la page **Events (Événements)**, vérifiez qu’il existe un événement `Promoted Read Replica cluster to a stand-alone database cluster` pour le cluster que vous avez promu.

Une fois que la promotion est terminée, l’instance de base de données MySQL principale et le réplica en lecture Aurora sont détachés, et vous pouvez supprimer en toute sécurité l’instance de base de données si vous le souhaitez.

### AWS CLI
<a name="AuroraMySQL.Migrating.RDSMySQL.Replica.Promote.CLI"></a>

Pour transformer une réplique de lecture Aurora en cluster de base de données autonome, utilisez la [https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica-db-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica-db-cluster.html) AWS CLI commande. 

**Example**  
Pour Linux, macOS ou Unix :  

```
aws rds promote-read-replica-db-cluster \
    --db-cluster-identifier myreadreplicacluster
```
Pour Windows :  

```
aws rds promote-read-replica-db-cluster ^
    --db-cluster-identifier myreadreplicacluster
```