Migrate an on-premises Oracle database to Amazon RDS for Oracle using Oracle Data Pump
Created by Mohan Annam (AWS) and Brian motzer (AWS)
Environment: PoC or pilot | Source: Databases: Relational | Target: Amazon RDS for Oracle |
R Type: Replatform | Workload: Oracle | Technologies: Migration; Databases |
AWS services: Amazon RDS |
Summary
This pattern describes how to migrate an Oracle database from an on-premises data center to an Amazon Relational Database Service (Amazon RDS) for Oracle DB instance by using Oracle Data Pump.
The pattern involves creating a data dump file from the source database, storing the file in an Amazon Simple Storage Service (Amazon S3) bucket, and then restoring the data to an Amazon RDS for Oracle DB instance. This pattern is useful when you encounter limitations using AWS Database Migration Service (AWS DMS) for the migration.
Prerequisites and limitations
Prerequisites
An active AWS account
The required permissions to create roles in AWS Identity and Access Management (IAM) and for an Amazon S3 multipart upload
The required permissions to export data from the source database
AWS Command Line Interface (AWS CLI) installed and configured
Product versions
Oracle Data Pump is available only for Oracle Database 10g Release 1 (10.1) and later versions.
Architecture
Source technology stack
On-premises Oracle databases
Target technology stack
Amazon RDS for Oracle
SQL client (Oracle SQL Developer)
An S3 bucket
Source and target architecture
Tools
AWS services
AWS Identity and Access Management (IAM) helps you securely manage access to your AWS resources by controlling who is authenticated and authorized to use them. In this pattern, IAM is used to create the roles and policies necessary for migrating data from Amazon S3 to Amazon RDS for Oracle.
Amazon Relational Database Service (Amazon RDS) for Oracle helps you set up, operate, and scale an Oracle relational database in the AWS Cloud.
Amazon Simple Storage Service (Amazon S3) is a cloud-based object storage service that helps you store, protect, and retrieve any amount of data.
Other tools
Oracle Data Pump
helps you move data and metadata from one database to another at high speeds. In this pattern, Oracle Data Pump is used to export the data dump (.dmp) file to the Oracle server, and to import it into Amazon RDS for Oracle. For more information, see Importing data into Oracle on Amazon RDS in the Amazon RDS documentation. Oracle SQL Developer
is an integrated development environment that simplifies the development and management of Oracle databases in both traditional and cloud-based deployments. It interacts with both the on-premises Oracle database and Amazon RDS for Oracle to run the SQL commands required for exporting and importing data.
Epics
Task | Description | Skills required |
---|---|---|
Create the bucket. | To create the S3 bucket, follow the instructions in the AWS documentation. | AWS systems administrator |
Task | Description | Skills required |
---|---|---|
Configure IAM permissions. | To configure permissions, follow the instructions in the AWS documentation. | AWS systems administrator |
Task | Description | Skills required |
---|---|---|
Create the target Amazon RDS for Oracle DB instance. | To create the Amazon RDS for Oracle instance, follow the instructions in the AWS documentation. | AWS systems administrator |
Associate the role with the DB instance. | To associate the role with the instance, follow the instructions in the AWS documentation. | DBA |
Task | Description | Skills required |
---|---|---|
Create the user. | Connect to the target Amazon RDS for Oracle database from Oracle SQL Developer or SQL*Plus, and run the following SQL command to create the user to import the schema into.
| DBA |
Task | Description | Skills required |
---|---|---|
Create a data dump file. | To create a dump file named
Review the export details by reviewing the | DBA |
Task | Description | Skills required |
---|---|---|
Upload the data dump file from the source to the S3 bucket. | Using AWS CLI, run the following command.
| DBA |
Task | Description | Skills required |
---|---|---|
Download the data dump file to Amazon RDS | To copy the dump file
The previous command outputs a task ID. To review the status of the download by reviewing the data in the task ID, run the following command.
To see the files in the
| AWS systems administrator |
Task | Description | Skills required |
---|---|---|
Restore the schema and data to Amazon RDS. | To import the dump file into the
To see the log file from the import, run the following command.
| DBA |
Task | Description | Skills required |
---|---|---|
List and clean up the export files. | List and remove the export files in the
| AWS systems administrator |