Do you know that feeling when you get new toys?
A short while ago, in a server room far, far away …
… a brand-new, shiny Oracle Exadata Exascale was left unguarded, so I decided to try out a few things.
Here’s how to export to and import from Exadata Exascale storage.
Prerequisites
- I create a directory for the Data Pump dump files pointing to the Exascale vault:
create directory dumpdir as '@MYVAULT1/CDB26/SALES/DUMPDIR';MYVAULT1is the name of my vault. Notice the@sign, which denotes Exascale vaults, like+in ASM.- I can specify subdirectories (
CDB26/SALES/DUMPDIR) to organize my files. However, there’s no concept of directories in Exascale, so these are really path prefixes. - Unlike a regular file system or ASM, I don’t have to create the matching file system directory.
- I create another directory for my Data Pump log files:
create directory logdir as '/u02/app/oracle/admin/CDB26/SALES/logdir';- I can’t use the Exascale directory for log files.
- Similar to ASM, I can’t store log files in Exascale.
- I create the matching file system directory for
logdir:mkdir -p /u02/app/oracle/admin/CDB26/SALES/logdir- In Oracle RAC, I should place the directory in a cluster file system or ensure that the folder exists on all nodes.
- Finally, I create a user to perform the Data Pump jobs:
create user dpuser identified by <password>; alter user dpuser default tablespace users; alter user dpuser quota unlimited on users; grant datapump_exp_full_database to dpuser; grant datapump_imp_full_database to dpuser;
Export
-
Here’s how to start an export:
expdp dpuser/<password>@<connect-string> \ dumpfile=dumpdir:myexp%L.dmp \ logfile=logdir:myexp-export.log \ ...- I write the dump file to my Exascale vault by specifying the database directory (
dumpdir) and then the dump file name specification. I’m using the%Lwildcard to allow Data Pump to create additional files. - Data Pump must write the log file to a real file system, so I use
logdirwhich points to a local file system.
- I write the dump file to my Exascale vault by specifying the database directory (
-
At the end of the export, Data Pump writes the names of my dump files:
04-AUG-26 11:08:36.114: Dump file set for DPUSER.SYS_EXPORT_SCHEMA_01 is: 04-AUG-26 11:08:36.114: @MYVAULT1/CDB26/SALES/DUMPDIR/myexp01.dmp 04-AUG-26 11:08:36.145: Job "DPUSER"."SYS_EXPORT_SCHEMA_01" successfully completed at Tue Aug 4 11:08:36 2026 elapsed 0 00:01:03
Import
- Here’s how to start an import:
impdp dpuser/<password>@<connect-string> \ dumpfile=dumpdir:myexp%L.dmp \ logfile=logdir:myexp-import.log \ ...- I configure the
dumpfileandlogfileparameters the same way as in the export. - I can use the
%Lwildcard in the dump file specification for imports as well. Data Pump automatically finds the required dump files.
- I configure the
Pro Tips
- Remember to apply the Data Pump bundle patch. I can even do it while the database is online.
- Instead of writing the Data Pump log files to a regular file system, I can also choose not to write to log files:
expdp ... nologfile=yes - I can use the Exascale shell (
xsh) to copy files between vaults and regular file systems.
Happy Data Pumping!














