Oracle Database Server
Anbieterhomepage | http://www.oracle.com |
Unterstützte Version | ab Version 11 |
Vorbereitungsmaßnahmen
JDBC-Treiber (Download)
Dump auf die VM übertragen (falls eine VM verwendet wird)
Kommando von Linux/MacOsx:
$scp <schema>.dmp root@<vmhost>:
Windows User verwenden am besten ein Tool, das scp kann, z.B. "winscp".
Installationsschritte (Datenbank, Schema und Benutzer):
Führen Sie folgende Befehle in einer SQLPLUS Konsole aus:
Hinweis: Der gleiche Befehl gilt auch für die Entwicklungs-VM, nachdem Sie sich als "root" auf dem System angemeldet haben.
Schema/User Löschen
Wenn schon ein Schema/User existiert, dass Sie überschreiben wollen/müssen, dann können Sie das Schema mit folgenden Befehl in SQLPlus löschen:
DROP USER <schema> CASCADE;
SQL Script zum Erzeugen eines Schemas/Users verwenden
Wenn Sie sich mit der Linux-VM verbinden, können Sie in SQLPlus ein fertiges Script verwenden, um ein Schema und ggfls. einen Tablespace anzulegen (Für Tablespace ist "ORAUSER" sehr gängig, kann aber auch abweichen): (Befehl von SQLPlus aus)
@create.sql
Falls Sie das Script nicht haben bzw. nicht verwenden wollen, bekommen Sie hier die einzelne Schritte erklärt: Oracle: Schema anlegen
Oracle Dump importieren
Wenn Sie die Linux-Entwicklungs-VM importieren, finden Sie in der Historie viele Beispiele für Imports und Exports. Die Standard-Syntax lautet: (Befehl von der Shell/CMD aus)
imp <schema>/<schema> file=<schema>.dmp fromuser=<schema> touser=<schema> log=<schema>.log ignore=yes feedback=50
Dies ist der Standard Import-Befehl. Möglicherweise müssen Sie noch verschiedenes anpassen, z.B. einen Tablespace erzeugen, oder die Version mit "version=10.2" angeben. Außerdem gibt es zu "imp" inkompatible "expdp" Dumps, die mit dem Befehl "impdp" importiert werden müssen. Dazu muss der Dump unter "/opt/oracle/admin/oracle/dpdump/" liegen. Beispiele dazu finden Sie in der Linux-VM in der bash-Historie, die Option "file=" wird dabei zu "dumpfile=".
Beispiel für impdp dump:
impdp <schema>/<schema> schemas=<schema> dumpfile=<schema>.dmp logfile=<schema>.log
Connection-URL
jdbc:oracle:thin:@<server>:<port>:<instance-name>
Beispiel: jdbc:oracle:thin:@localhost:1521:oracle
Die Verwendung eines "service name" statt einer SID wird vom Installer nicht unterstützt. Hierfür gibt es zwei Workarounds:
- Angabe einer SID im Installer mit der sich testweise verbunden werden kann. Anschließend Connection-URL in
nuclos.xml
entsprechend anpassen (bspw.jdbc:oracle:thin:@<server>:<port>:<instance-name>
) und den Installer mit der Option-s
nochmals ausführen. - Konfiguration des TNS Listener in der DB so anpassen, dass SID als Service-Name interpretiert wird. Hierzu muss die Datei
listener.ora
(meist/opt/oracle/oradata/dbconfig/<instance>/listener.ora
) um die ZeileUSE_SID_AS_SERVICE_LISTENER = ON
(vor den Listener-Definitionen) ergänzt werden. Danach muss die Konfiguration des TNS Listener mittelslsnrctl reload
aktualisiert werden.
Anpassen der nuclos.xml
Als Letztes müssen Sie noch die Datenbank-Einstellungen in der nuclos.xml an Ihre Konfiguration anpassen:
<adapter> | oracle |
<connection-url> | jdbc:oracle:thin:@<server>:<port>:<instance-name> |
<user>, <password> | Datenbank-Benutzer und Passwort |
<schema> | Schema-Name |
<tablespace> | Tablespace-Name (Schritt a) |
Sonstige Informationen
Neben diesen Standardparameter werden in der nuclos.xml noch die folgenden optionalen und Oracle-spezifischen Parameter unterstützt:
<tablespace-index> (optional) | Tablespace-Name für Indizes (falls ein separater Tablespace für Indizes verwendet werden soll) |