Zu Oracle

Bereich:
Versionsinfo:
DBA
9.2 10.2 11.1
Erstellung:
Letzte Überarbeitung:
2003 MP
05/2009 BK
 Als PDF Downloaden!

Oracle Import

Übersicht der Themen:

  • Funktionen
  • Aufrufmethoden
  • Syntax
  • Import-Modi
  • Parameter

Hinweis

Mit der Version 10g hat Oracle das neue Werkzeug Data Pump Export und Import verfügbar gemacht. Oracle empfiehlt dass ab der Version 10g Data Pump für Export und Import verwendet werden sollen.

Es muss das Export / Import Werkzeug verwendet werden wenn:

  • Dateien importiert werden die mit Export entstanden sind
  • Dateien exportiert werden die mit Import importiert werden sollen (Daten aus Oracle 10g die in eine frühere Version importiert werden sollen)

Funktionen

Mit Hilfe der Export / Import Utilities können Sie:

  • Logische Backups von Datenbank-Objekten, ganzen Schemata, Tablespaces oder einer kompletten Datenbank erstellen.
  • Bei einem Fehlerfall einzelne Objekte, Schemata, Tablespaces oder Datenbanken wiederherstellen.
  • Zwischen verschiedenen Oracle Versionen migrieren.

Aufrufmethoden

Die Utilities werden über die Command Line des jeweiligen Betriebssystems aufgerufen.Dabei gibt es drei verschiedene Möglichkeiten:

Interaktiv

  • Geben Sie nur den Befehl 'imp' ein.
  • Sie werden nun nach jedem Parameter gefragt.
  • Hierbei sind aber nicht alle möglichen Parameter verfügbar.
  • Bei der Abfrage wird immer ein Default-Wert vorgegeben.

Kommandozeile

  • Sie übergeben beim Aufruf des Befehls alle Parameter mit ihren Werten.
  • Beispiel: imp<user>/<pwd> tables=( emp, dept, ...) indexes=n constraints=y file=<name>.dmp

Parameterfile

  • Ein Teil oder alle Parameter werden über eine eigene Datei aufgerufen.
  • Beispiel: imp parfile=<datei_name>

Syntax

Die Tools finden Sie im Verzeichnis $ORACLE_HOME/bin/  (UNIX)
oder %ORACLE_HOME%\bin\  (Windows).

Beim Aufruf gilt folgende Syntax:

IMP system/manager { [ OWNER=name ]  |  [ TABLES=(name1,name2,...) ]  |  [ FILE=name ]  |  [ FULL=Y ]  |  [ TABLESPACE=name ] ... }

Beispiele:

IMP scott/tiger TABLES=(emp,dept) ROWS=y file=expincr1.dmp

IMP system/manager FROMUSER=scott LOG=imp.log

IMP system/manager FULL=y FILE=expcum1.dmp LOG=imp1.log

Import-Modi

Es gibt vier verschiedene Import-Modi:

Modus Tabelle (TABLE)

  • Importiert die angegebenen Tabellen aus dem Schema des Benutzers.
  • Ein privilegierter Benutzer kann Tabellen importieren, die anderen Benutzern gehören.

Modus Benutzer (FROMUSER, TOUSER)

  • Legt KEINEN neuen Benutzer an.
  • Importiert alle Objekte aus dem Schema eines Benutzers.
  • Privilegierte Benutzer können alle Objekte einer Reihe von Benutzern importieren.

Modus Tablespace (TRANSPORTABLE_TABLESPACE, TABLESPACE)

  • Mit transportablen Tablespaces kann eine Teilmenge einer Oracle Datenbank in eine andere Oracle Datenbank verlagert werden.
  • Kann schneller als Export/Import der Daten sein, da nur die Datendateien kopiert und in die Strukturinformation des Tablespace integriert werden.
  • Ab 9i können auch Objekte eines Tablespaces (Tabellen, Indizes) wieder eingespielt werden.

Modus Datenbank (FULL)

  • Importiert alle Datenbank-Objekte, außer denen des SYS-Schemas.
  • Nur privilegierte Benutzer können diesen Modus verwenden.

Paramter

Parameter

Funktion

Userid=<usr>/<pwd>
[@db_alias][as sysdba]

Benutzername und Passwort.
Optional kann auch auf eine Remote Datenbank zugegriffen werden.
Wenn als SYS gearbeitet werden soll muss ab 9i die Syntax "AS SYSDBA" angehängt werden

Buffer=<n>

Interne Buffergröße für den Fetch auf die Datenbank.Aus Geschwindigkeitsgründen sollte der Puffer so Groß wie möglich gemacht werden. (z.B 100 000000)

COMMIT =     [ Y | N ]

Hiermit kann angegeben werden, dass nach einer bestimmten Anzahl (leider nicht einstellbar) von Zeilen ein Commit gemacht wird.
Vorteil: Die Rollback-Segmente platzen nicht so leicht
Nachteil: In einem Fehlerfall (Absturz während Import) ist der Transaktionzustand unbrauchbar und es muss Neu begonnen werden

DESTROY =   [ Y | N ]

Bei einem Full Import werden auch die Datendateien für die Tablespaces neu angelegt. Wenn die Dateien schon existieren werden sie ohne Rückfrage überschrieben. Vorsicht hier könnten auch Dateien von einer fremden Instanz überschrieben werden

Grants =        [ Y | N ]
Indexes=       [ Y | N ]
Rows =          [ Y | N ]
Constraints = [ Y | N ]

geben an, ob Grants., Indizes, Rows und Constraints importiert werden sollen. Default=Y

File= <file>[,<file>,..]

Ab Version 8i können auch mehrere Dateien angegeben werden. Diese werden dann sequentiell importiert.

Filesize= <n> [K|M|G]

Ab Version 8i. Wenn die Dateigröße mit angegeben wird, kann auch diese geprüft werden.

Fromuser=  <name>

Benutzer von dem Objekte importiert werden sollen

Touser= <name>

Der Benutzer unter dem dann importiert wird kann dann ein anderer sein, als der von dem sie ursprünglich gestammt haben

Indexfile=<file>

Hier wird nur eine Datei erzeugt, in die dann die Befehle zum Erzeugen der Indizes und Tabellen eingetragen werden. Es werden keine Objekte in die DB importiert,

Tables=(<tab1>,<tab2>,...)

(tables=emp,dept,...) Angabe, welche Tabellen importiert werden sollen. Tabellen, die ein '#' enthalten müssen in doppelte Anführungszeichen gesetzt werden ( z. B. "dept#")

Help=Y

Anzeige der gültigen Parameter

Parfile=<datei>

Name des Parameterfiles

Log=<datei>

Name einer Log-Datei

Statistics= [none|safe|always|
recalculate ]

None: Optimizer Statistiken werden nicht importiert
Always: Optimizer Statistiken werden importiert
Safe: Optimizer Statistiken werden importiert, wenn Sie nicht fragwürdig (z. B durch unvollständigen Export) sind, sonst erfolgt Neukalkulation
(ab 9i) Recalculate: Statistiken werden neu berechnet

Neue ab Oracle 9i

 

Resumable= [ Y | N]

Sollte beim Import ein Fehler auftreten (z. B. Tablespace voll) wird der Import nicht sofort abgebrochen, sondern schreibt nur einen Eintrag in die Tabelle dba_resumable und einen in die Alert-Datei.

Resumable_Name=
<name>

Name der Session der dann in die Tabelle dba_resumable und in die Alert-Datei eingetragen wird

Resumable_Timeout=<sek>

Zeitspanne nach der der auf Resumable gesetzte Fehler endgültig abgebrochen wird. Default 7200 Sekunden = Stunden

Suche

Kontakt

Telefon:
  089 6228 6789-0

Telefon (gültig bis Ende 2010):
  089 679090-40

E-Mail Verteiler Monatstipps

Bitte nehmen Sie mich in den Verteiler der monatlichen Tipps & Tricks auf.