= Oracle Dump =
**Summary**: How to create a dump of a Oracle database. \\
**Date**: Around 2013 \\
**Refactor**: 8 March 2025: Checked links and formatting. \\
{{tag>oracle}}
Normally when creating backups you should prefer a [[oraclerman|RMAN backup]]. However, this is not the way to go when you want to transfer a database across an operating system. So say you have an Oracle database on AIX and you want to transfer it to Windows, you should use another method, simply being a dump. I have gathered here the required commands and variables you need just for the dump. If you need a script that creates this, use [[oraclerman|RMAN backup]] as an example and work from there.
= Oracle Dump =
BACKBACKUPDIR=/var/backup/oracle/schemadump
HOSTNAME=`hostname`
DATESTAMP=$(date +%Y%m%d%H%M)
export ORACLE_HOME=/opt/oracle/product/10.2
DUMP=$BACKBACKUPDIR/$DATESTAMP-${HOSTNAME}-Oracle.dmp
LOG=$BACKBACKUPDIR/$DATESTAMP-${HOSTNAME}-Oracle.log
# Connect to the database instance and make the dump as system
${ORACLE_HOME}/bin/exp system/ FULL=y DIRECT=y FILE=$DUMP LOG=$LOG
/usr/local/bin/tar -cf - $LOG $DUMP | /usr/bin/gzip > $BACKUPFILE
rm $LOG
rm $DUMP
Or without a password in the script:
${ORACLE_HOME}/bin/exp \'/ as sysdba\' FULL=y DIRECT=y FILE=$DUMP LOG=$LOG