How to use expdp on AWS RDS

Introduction

On AWS RDS you cannot get to the machine. This makes it more difficult to use expdp, which saves the export files to an Oracle directory location on the RDS server. Fortunately, the is a way to use expdp and get to the resultant files. The guide below explains how to do this.

Step by Step Guide

1. Log onto a client machine that has the Oracle client installed.

2. Create an expdp parameter file called *MyParfile.par*. Below is an example

DIRECTORY=DATA_PUMP_DIR
DUMPFILE=MyExportFIle%u.exp
LOGFILE=MyExportFile.log
EXCLUDE=statistics
PARALLEL=12
FILESIZE=1GB
TABLES=
MyTableOwner.MyTable1

Notes
The level of parallelism is set to 12. The RDS machine has 12 CPUs . My table is 100G.
The filesize is set to 1G. This will generate 100, 1G files. This is very useful if I am short of space on my cleint machine. See further down.
The RDS machine has at least 100G available to it.
Make sure %u is specified in the DUMPFILE parameter

3. Run the expdp command

expdp MyDbaUser/MyDbaPassword@MyDB parfile=MyParfile.par

4. Once complete there will be 100, 1G files located in the DATA_PUMP_DIR on the AWS RDS server

5. Use the following guide to download the files How to Download Files from AWS RDS

Note
This is where having 1G files is useful, especially if you do not have enough space on the Oracle client machine. Each file can be downloaed individually and zipped up. Typically, depending on the data, 80% compression is achievable.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License