Thursday 22 January 2015

ORA-39095: Dump file space has been exhausted

Wenn es darum geht einen Export unter Verwendung von datapump (expdp) auszuführen, werden die exportieren Daten in den dump files (*.dmp) abgelegt, welche ihr mit dem dump file parameter im expdp Befehl angibt::

dumpfile=FILENAME.dmp

Nun mit dem Export werden die spezifizierten dump files angelegt und sie werden logischerweise immer größer solang der Export-Prozess andauert. Wenn euer Filesystem oder irgendeine andere Einstellung eine Maximalgröße für Dateien vorgibt, kann es es zu Problemen kommen. Denn falls eure Datenbank sehr groß ist und das dump file die maximale erlaubte Größe erreicht, bekommt ihr folgende Meldung:

ORA-39095: Dump file space has been exhausted

Die Lösung dafür ist, dass anstatt dass ein dump file beim Export erzeugt wird, der Export sich auf mehrere, kleinere dump files ausbreiten soll. Dann sollte beim Export Befehl die maximale Größe für jedes dieser dump files angegeben werden, z.B. hier 1 GB:


filesize = 1000M

Auch muss beim expdp Befehl angegeben werden, dass falls es wirklich dazu kommt, dass mehrere dump files angelegt werden, wie die Benennung der Dateien stattfinden soll. Zum Beispiel, wenn ihr wollt, dass jede dump file eine Nummer am Ende bekommt:

file_1.dmp
file_2.dmp
file_3.dmp
...
file_99.dm

Dazu müsst ihr folgenden Parameter am Befehl dranhängen:

dumpfile=file_%U.dmp

Dass %U übernimmt dabei die Nummerierung.

Achtung, die inkrementelle Nummerierung geht nur bis 99.  Falls 99 Dateien (99* 1GB = 99 GB) generiert wurden, bevor der Export abgeschlossen ist, dann wird wieder der ORA-39095 Fehler kommen. In diesem Fall müsstet ihr wiederum die maximale Größe für dump files erhöhen.

No comments:

Post a Comment