Migrate from Oracle to Amazon RDS for PostgreSQL using Oracle GoldenGate
Created by Dhairya Jindani (AWS)
R Type: Re-architect | Source: Databases: Relational | Target: Amazon RDS for PostgreSQL |
Created by: AWS | Environment: PoC or pilot | Technologies: Databases; Migration |
Workload: Oracle | AWS services: Amazon RDS |
Summary
This pattern describes how to migrate an Oracle database running on premises or on an Amazon Elastic Compute Cloud (Amazon EC2) instance to Amazon Relational Database Service (Amazon RDS) for PostgreSQL by using Oracle GoldenGate.
Oracle GoldenGate is a tool for replicating data between a source database and one or more destination databases with minimal downtime.
Prerequisites and limitations
Prerequisites
An Oracle GoldenGate license
Knowledge of the fundamental building blocks of Oracle GoldenGate
GoldenGate software on an EC2 instance
GoldenGate configured on the source Oracle database
GoldenGate configured on the target PostgreSQL database (including Amazon EC2 setup and the JDBC driver to connect to the PostgreSQL database)
Schema and tables using the AWS Schema Conversion Tool (AWS SCT) on the target PostgreSQL database
Restrictions
GoldenGate is used only to replicate existing table data (initial load) and ongoing changes (change data capture or CDC)
Product versions
Oracle Database Enterprise Edition, 10g, 11g, 12c, or later version
GoldenGate for Oracle version 12.2.0.1.1
GoldenGate for PostgreSQL version 12.2.0.1.1
Architecture
Source technology stack
Oracle database, either on premises or on an EC2 instance
Target technology stack
Amazon RDS for PostgreSQL
Target architecture

Tools
Oracle GoldenGate - Oracle GoldenGate
enables the exchange and manipulation of data at the transaction level among multiple, heterogeneous platforms across the enterprise. It moves committed transactions with transaction integrity and minimal overhead on an existing infrastructure.
Epics
Task | Description | Skills required |
---|---|---|
Download GoldenGate for Oracle. | DBA | |
Download GoldenGate for PostgreSQL. | DBA | |
Install GoldenGate for Oracle on the Oracle database server. | DBA | |
Install GoldenGate for PostgreSQL database on the EC2 instance. | DBA |
Task | Description | Skills required |
---|---|---|
Set up GoldenGate for the Oracle database. | Set up includes supplemental logging, the GoldenGate user, and required grants and permissions. | DBA |
Configure GoldenGate on Oracle. | Create and set up the parameter file, manager setup, GoldenGate directory, GLOBALS file, and wallet. | DBA |
Task | Description | Skills required |
---|---|---|
Set up GoldenGate for PostgreSQL. | Includes the creation and setup of GoldenGate manager, GLOBALS file, and wallet. | DBA |
Task | Description | Skills required |
---|---|---|
Set up the extract process in the source database. | Create an extract file on the source Oracle database to extract data. The extract file includes the creation of the extract parameter file and trail file directory. | DBA |
Set up a data pump to transfer the trail file from the source to the target database. | Setup includes creating the data pump parameter file and the trail file directory. | DBA |
Set up replication on the EC2 instance. | Setup includes creating the replication parameter file, creating the trail file directory, and adding a checkpoint table entry in the GLOBALS file at the target. | DBA |
Task | Description | Skills required |
---|---|---|
Create the parameter file at the source side to extract data for the initial load. | Make sure that the manager is running on the target. | DBA |
Set up the Replicat process for the initial load at the target. | Create a parameter file at the target to replicate data for the initial load. Add and start the Replicat process. | DBA |
Task | Description | Skills required |
---|---|---|
Stop replication on the task by ensuring that the source and target are in sync. | Make sure that data validation is successful. | DBA |
Create trigger, sequence, synonyms, and referential keys on the target. | DBA |