

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 Db2 via Amazon S3 vers Amazon RDS for Db2
<a name="db2-migration-load-from-s3"></a>

Avec cette approche de migration, vous enregistrez d’abord les données d’une table unique dans un fichier de données que vous placez dans un compartiment Amazon S3. Vous utilisez ensuite la [commande LOAD](https://www.ibm.com/docs/en/db2/11.5?topic=commands-load) pour charger les données de ce fichier de données dans une table de votre base de données Amazon RDS for Db2. Pour plus d’informations sur l’utilisation d’Amazon S3, consultez [Intégration d’une instance de base de données Amazon RDS for Db2 avec Amazon S3](db2-s3-integration.md).

**Topics**
+ [Enregistrement de vos données dans Amazon S3](#db2-migration-load-from-s3-saving-data-file)
+ [Chargement de vos données dans les tables RDS for Db2](#db2-migration-load-from-s3-into-db-table)

## Enregistrement de vos données dans Amazon S3
<a name="db2-migration-load-from-s3-saving-data-file"></a>

Pour enregistrer les données d’une seule table sur Amazon S3, utilisez un utilitaire de base de données pour extraire les données de votre système de gestion de base de données (DBMS) dans un fichier CSV. Chargez ensuite le fichier de données sur Amazon S3.

Pour stocker des fichiers de données sur Amazon S3, vous avez besoin des AWS composants suivants :
+ *Un compartiment Amazon S3 pour stocker vos fichiers de sauvegarde* : si vous avez déjà un compartiment S3, vous pouvez l’utiliser. Si vous n’avez pas de compartiment S3, consultez [Création d’un compartiment](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) dans le *Guide de l’utilisateur Amazon S3*.
+ *Un rôle IAM pour accéder au compartiment S3* : si vous avez déjà un rôle IAM, vous pouvez l’utiliser. Si vous n’avez pas de rôle, consultez [Étape 2 : création d’un rôle IAM et ajoute de votre politique IAM](db2-s3-integration.md#db2-creating-iam-role). 
+ *Une politique IAM avec des relations d’approbation et des autorisations associées à votre rôle IAM* : pour plus d’informations, consultez [Étape 1 : créer une politique IAM](db2-s3-integration.md#db2-creating-iam-policy).
+ *Le rôle IAM ajouté à votre instance de base de données RDS for Db2* : pour plus d’informations, consultez [Étape 3 : ajoutez votre rôle IAM à votre instance de base de données RDS for Db2](db2-s3-integration.md#db2-adding-iam-role).

## Chargement de vos données dans les tables RDS for Db2
<a name="db2-migration-load-from-s3-into-db-table"></a>

Après avoir enregistré vos fichiers de données sur Amazon S3, vous pouvez charger les données de ces fichiers dans des tables individuelles de votre instance de base de données RDS for Db2.

**Chargement des données de votre table Db2 dans votre table de base de données RDS for Db2**

1. Connectez-vous à la base de données `rdsadmin` à l’aide du nom d’utilisateur principal et du mot de passe principal de votre instance de base de données RDS for Db2. Dans l'exemple suivant, remplacez *master\$1username* et *master\$1password* par vos propres informations.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Cataloguez un alias d’accès au stockage qui pointe vers le compartiment Amazon S3 où vos fichiers enregistrés sont stockés. Notez le nom de cet alias pour l’utiliser à l’étape suivante. Vous ne devez effectuer cette étape qu’une seule fois si vous prévoyez de charger plusieurs tables à partir de fichiers de données stockés dans le même compartiment Amazon S3.

   L'exemple suivant répertorie un alias nommé *my\$1s3\$1alias* qui accorde à un utilisateur nommé l'*jorge\$1souza*accès à un bucket nommé*amzn-s3-demo-bucket*.

   ```
   db2 "call rdsadmin.catalog_storage_access(?, 'my_s3_alias', 'amzn-s3-demo-bucket', 'USER', 'jorge_souza')"
   ```

   Pour plus d’informations sur cette procédure stockée, consultez [rdsadmin.catalog\$1storage\$1access](db2-sp-managing-storage-access.md#db2-sp-catalog-storage-access).

1. Exécutez la commande `LOAD` à l’aide de l’alias d’accès au stockage qui pointe vers votre compartiment Amazon S3. 
**Note**  
Si la commande `LOAD` renvoie une erreur, vous devrez peut-être créer un point de terminaison de passerelle VPC pour Amazon S3 et ajouter des règles de sortie au groupe de sécurité. Pour de plus amples informations, veuillez consulter [I/O Erreur de fichier](db2-troubleshooting.md#db2-file-input-output-error).

   L'exemple suivant charge les données d'un fichier de données nommé *my\$1s3\$1datafile.csv* dans une table nommée*my\$1db2\$1table*. L'exemple suppose que le fichier de données se trouve dans le compartiment Amazon S3 vers lequel *my\$1s3\$1alias* pointe l'alias nommé.

   ```
   db2 "load from db2remote://my_s3_alias//my_s3_datafile.csv of DEL insert into my_db2_table";
   ```

   L'exemple suivant charge LOBs à partir d'un fichier de données nommé *my\$1table1\$1export.ixf* dans une table nommée*my\$1db2\$1table*. L'exemple suppose que le fichier de données se trouve dans le compartiment Amazon S3 vers lequel *my\$1s3\$1alias* pointe l'alias nommé.

   ```
   db2 "call sysproc.admin_cmd('load from "db2remote://my_s3_alias//my_table1_export.ixf" of ixf
           lobs from "db2remote://my_s3_alias//" xml from "db2remote://my_s3_alias//"
           modified by lobsinfile implicitlyhiddeninclude identityoverride generatedoverride periodoverride transactionidoverride
           messages on server
           replace into "my_schema"."my_db2_table"
                                  nonrecoverable
           indexing mode incremental allow no access')"
   ```

   Répétez cette étape pour chaque fichier de données du compartiment Amazon S3 que vous souhaitez charger dans une table de votre instance de base de données RDS for Db2.

   Pour plus d’informations sur la commande `LOAD`, consultez [Commande LOAD](https://www.ibm.com/docs/en/db2/11.5?topic=commands-load).