

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.

# Migrez progressivement d'Amazon RDS for Oracle vers Amazon RDS for PostgreSQL à l'aide d'Oracle SQL Developer et d'AWS SCT
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct"></a>

*Pinesh Singal, Amazon Web Services*

## Résumé
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-summary"></a>

De nombreuses stratégies et approches de migration se déroulent en plusieurs phases qui peuvent durer de quelques semaines à plusieurs mois. Pendant ce temps, vous pouvez rencontrer des retards en raison de l'application de correctifs ou de mises à niveau dans les instances de base de données Oracle source que vous souhaitez migrer vers des instances de base de données PostgreSQL. Pour éviter cette situation, nous vous recommandons de migrer progressivement le code de base de données Oracle restant vers le code de base de données PostgreSQL.

Ce modèle fournit une stratégie de migration incrémentielle sans interruption pour une instance de base de données Oracle de plusieurs téraoctets qui effectue un grand nombre de transactions après votre migration initiale et qui doit être migrée vers une base de données PostgreSQL. Vous pouvez utiliser l' step-by-stepapproche de ce modèle pour migrer progressivement une instance de base de données Amazon Relational Database Service (Amazon RDS) pour Oracle vers une instance de base de données Amazon RDS for PostgreSQL sans vous connecter à la console de gestion Amazon Web Services (AWS).

Le modèle utilise [Oracle SQL Developer](https://www.oracle.com/database/technologies/appdev/sqldeveloper-landing.html) pour trouver les différences entre deux schémas dans la base de données Oracle source. Vous utilisez ensuite AWS Schema Conversion Tool (AWS SCT) pour convertir les objets de schéma de base de données Amazon RDS for Oracle en objets de schéma de base de données Amazon RDS for PostgreSQL. Vous pouvez ensuite exécuter un script Python dans l'invite de commande Windows pour créer des objets AWS SCT pour les modifications incrémentielles apportées aux objets de base de données source.

**Note**  
Avant de migrer vos charges de travail de production, nous vous recommandons d'exécuter une validation de principe (PoC) pour l'approche de ce modèle dans un environnement de test ou hors production.

## Conditions préalables et limitations
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-prereqs"></a>

**Conditions préalables**
+ Un compte AWS actif.
+ Une instance de base de données Amazon RDS pour Oracle existante. 
+ Une instance de base de données Amazon RDS pour PostgreSQL existante.
+ AWS SCT, installé et configuré avec des pilotes JDBC pour les moteurs de base de données Oracle et PostgreSQL. Pour plus d'informations à ce sujet, consultez les [sections Installation d'AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html#CHAP_Installing.Procedure) et [Installation des pilotes de base de données requis](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html#CHAP_Installing.JDBCDrivers) dans la documentation AWS SCT. 
+ Oracle SQL Developer, installé et configuré. Pour plus d'informations à ce sujet, consultez la documentation [Oracle SQL Developer](https://www.oracle.com/database/technologies/appdev/sqldeveloper-landing.html). 
+ Le `incremental-migration-sct-sql.zip` fichier (joint), téléchargé sur votre ordinateur local.

**Limites**
+ Les exigences minimales pour votre instance de base de données Amazon RDS for Oracle source sont les suivantes :
  + Oracle versions 10.2 et ultérieures (pour les versions 10.x), 11g (versions 11.2.0.3.v1 et ultérieures) et jusqu'à 12.2, et 18c pour les éditions Enterprise, Standard, Standard One et Standard Two
+ Les exigences minimales pour votre instance de base de données Amazon RDS pour PostgreSQL cible sont les suivantes :  
  + PostgreSQL versions 9.4 et ultérieures (pour les versions 9.x), 10.x et 11.x
+ Ce modèle utilise Oracle SQL Developer. Vos résultats peuvent varier si vous utilisez d'autres outils pour rechercher et exporter les différences de schéma.
+ Les [scripts SQL](https://docs.oracle.com/database/121/AEUTL/sql_rep.htm#AEUTL191) générés par Oracle SQL Developer peuvent générer des erreurs de transformation, ce qui signifie que vous devez effectuer une migration manuelle.
+ Si les connexions de test source et cible AWS SCT échouent, assurez-vous de configurer les versions du pilote JDBC et les règles entrantes pour que le groupe de sécurité du cloud privé virtuel (VPC) accepte le trafic entrant.

**Versions du produit**
+ Instance de base de données Amazon RDS pour Oracle version 12.1.0.2 (version 10.2 et versions ultérieures)
+ Instance de base de données Amazon RDS pour PostgreSQL version 11.5 (version 9.4 et versions ultérieures)
+ Oracle SQL Developer version 19.1 et versions ultérieures
+ AWS SCT version 1.0.632 et versions ultérieures

## Architecture
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-architecture"></a>

**Pile technologique source**
+ Instance de base de données Amazon RDS pour Oracle

**Pile technologique cible**
+ Instance de base de données Amazon RDS pour PostgreSQL

**Architecture source et cible**

Le schéma suivant montre la migration d'une instance de base de données Amazon RDS pour Oracle vers une instance de base de données Amazon RDS pour PostgreSQL.

![\[Flux de travail de migration d'Amazon RDS for Oracle vers Amazon RDS for PostgreSQL.\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/c7eed517-e496-4e8e-a520-c1e43397419e/images/bfbbed5e-db13-4a22-99aa-1a17f00f5faf.png)


Le schéma montre le flux de travail de migration suivant :

1. Ouvrez Oracle SQL Developer et connectez-vous aux bases de données source et cible.

1. Générez un [rapport de comparaison](https://docs.oracle.com/cd/E93130_01/rules_palette/Content/Diff%20Reports/Detailed_Diff_Reports.htm), puis générez le fichier de scripts SQL pour les objets de différence de schéma. Pour plus d'informations sur les rapports de différence, consultez la section [Rapports de différence détaillés](https://docs.oracle.com/cd/E93130_01/rules_palette/Content/Diff%20Reports/Detailed_Diff_Reports.htm) dans la documentation Oracle.

1. Configurez AWS SCT et exécutez le code Python.

1. Le fichier de scripts SQL est converti d'Oracle en PostgreSQL.

1. Exécutez le fichier de scripts SQL sur l'instance de base de données PostgreSQL cible. 

**Automatisation et mise à l'échelle**

Vous pouvez automatiser cette migration en ajoutant des paramètres supplémentaires et des modifications liées à la sécurité pour plusieurs fonctionnalités dans un seul programme à votre script Python.

## Outils
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-tools"></a>
+ [AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html) — AWS Schema Conversion Tool (AWS SCT) convertit votre schéma de base de données existant d'un moteur de base de données à un autre.
+ [Oracle SQL Developer](https://www.oracle.com/database/technologies/appdev/sqldeveloper-landing.html) — Oracle SQL Developer est un environnement de développement intégré (IDE) qui simplifie le développement et la gestion des bases de données Oracle dans les déploiements traditionnels et basés sur le cloud.

**Code**

Le `incremental-migration-sct-sql.zip` fichier (joint) contient le code source complet de ce modèle.

## Épopées
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-epics"></a>

### Créez le fichier de scripts SQL pour les différences de schéma de base de données source
<a name="create-the-sql-scripts-file-for-the-source-database-schema-differences"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Exécutez Database Diff dans Oracle SQL Developer.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct.html) | DBA | 
| Générez le fichier de scripts SQL. | Choisissez **Generate Script** pour générer les différences entre les fichiers SQL. Cela génère le fichier de scripts SQL qu'AWS SCT utilise pour convertir votre base de données d'Oracle en PostgreSQL. | DBA | 

### Utilisez le script Python pour créer les objets de base de données cibles dans AWS SCT
<a name="use-the-python-script-to-create-the-target-db-objects-in-aws-sct"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Configurez AWS SCT à l'aide de l'invite de commande Windows.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct.html)<pre>#source_vendor,source_hostname,source_dbname,source_user,source_pwd,source_schema,source_port,source_sid,target_vendor,target_hostname,target_user,target_pwd,target_dbname,target_port<br /><br />ORACLE,myoracledb.cokmvis0v46q.us-east-1.rds.amazonaws.com,ORCL,orcl,orcl1234,orcl,1521,ORCL,POSTGRESQL,mypgdbinstance.cokmvis0v46q.us-east-1.rds.amazonaws.com,pguser,pgpassword,pgdb,5432</pre>4. Modifiez les paramètres de configuration AWS SCT en fonction de vos besoins, puis copiez le fichier de scripts SQL dans votre répertoire de travail, dans le `input` sous-répertoire. | DBA | 
| Exécutez le script python.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct.html) | DBA | 
|  Création des objets dans Amazon RDS for PostgreSQL | Exécutez les fichiers SQL et créez des objets dans votre instance de base de données Amazon RDS for PostgreSQL. | DBA | 

## Ressources connexes
<a name="incrementally-migrate-from-amazon-rds-for-oracle-to-amazon-rds-for-postgresql-using-oracle-sql-developer-and-aws-sct-resources"></a>
+ [Oracle sur Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Oracle.html) 
+ [PostgreSQL sur Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html)
+ [Utilisation de l'interface utilisateur AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_UserInterface.html)
+ [Utilisation d'Oracle comme source pour AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Source.Oracle.html)

## Pièces jointes
<a name="attachments-c7eed517-e496-4e8e-a520-c1e43397419e"></a>

[Pour accéder au contenu supplémentaire associé à ce document, décompressez le fichier suivant : attachment.zip](samples/p-attach/c7eed517-e496-4e8e-a520-c1e43397419e/attachments/attachment.zip)