Oracle: Einzelne Partitionen mit expdp sichern

Oracle bietet seit Version 11g mit "Oracle Data Pump" ein leistungsfähiges Tool zum Exportieren von Daten - z.B. für die Erstellung von Backups.
Dabei können einzelne Tabellen und auch Partitionen exportiert werden.

Hier ein kleines Beispiel:

  • Tabelle EXAMPLE, welche partitioniert ist
  • Es existieren 10 Partitionen mit den Namen PART_1, PART_2 bis PART_10

Um die Daten zu exportieren, muss (die notwendigen Berechtigungen vorausgesetzt) ein Exportverzeichnis erstellt werden:

sqlplus / as sysdba

-- Export in das Verzeichnis /tmp/backup
create or replace directory export_dir as '/tmp/backup/';

Jetzt kann z.B. die Partition "PART_1 exportiert werden:

$>expdp [DB_USER]/[DB_PASSWORD]@[DB_SID]
   tables=EXAMPLE:PART_1
   directory=EXPORT_DIR
   dumpfile=EXAMPLE_PART_1.dmp
   logfile=expdp_EXAMPLE_PART_1.log

Danach kann das Exportverzeichnis wieder gelöscht werden.

sqlplus / as sysdba

-- Export in das Verzeichnis /tmp/backup
drop directory export_dir;

Links:

http://www.oracle.com/technetwork/database/enterprise-edition/index-093639.html