Das FreeBSD-Handbuch
Zurück | Kapitel 11. Linux-Binärkompatibilität | Weiter

# 11.6. Oracle® installieren

Beigetragen von Marcel Moolenaar.

## 11.6.1. Übersicht

Dieses Dokument beschreibt die Installation von Oracle® 8.0.5 und Oracle 8.0.5.1 Enterprise Edition für Linux auf einem FreeBSD-Rechner.

## 11.6.2. Installation der Linux-Umgebung

Stellen Sie sicher, dass Sie sowohl `emulators/linux_base` und `devel/linux_devtools` aus der Ports-Sammlung installiert haben. Wenn Sie mit diesen Ports Schwierigkeiten haben, müssen Sie vielleicht ältere Versionen der Linux-Umgebung aus der Ports-Sammlung installieren.

Wenn Sie den Intelligent-Agent verwenden wollen, müssen Sie zusätzlich das RedHat Tcl-Paket installieren: `tcl-8.0.3-20.i386.rpm`. Zur Installation von RPM-Paketen wir der Port `archivers/rpm` benötigt. Ist der Port installiert, lassen sich RPM-Pakete anschließend mit dem nachstehenden Befehl installieren:

    # rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm package

Die Installation der RPM-Pakete sollte ohne Fehlermeldung ablaufen.

## 11.6.3. Die Oracle-Umgebung erzeugen

Bevor Sie Oracle installieren können, müssen Sie eine entsprechende Umgebung erzeugen. Dieses Dokument beschreibt nur, was Sie im Speziellen tun müssen, um die Linux-Version von Oracle unter FreeBSD zu installieren, nicht aber, was bereits in der Installationsanleitung von Oracle beschrieben wird.

### 11.6.3.1. Kernel-Tuning

Wie in der Installationsanleitung von Oracle beschrieben, müssen Sie die maximale Shared-Memory Größe festlegen. Verwenden Sie `SHMMAX` nicht unter FreeBSD. `SHMMAX` wird lediglich aus `SHMMAXPGS` und `PGSIZE` berechnet. Definieren Sie stattdessen `SHMMAXPGS`. Alle anderen Optionen können wie in der Anleitung beschrieben verwendet werden. Zum Beispiel:

    options SHMMAXPGS=10000
    options SHMMNI=100
    options SHMSEG=10
    options SEMMNS=200
    options SEMMNI=70
    options SEMMSL=61

Passen Sie diese Optionen entsprechend dem von Ihnen gewünschten Einsatzzweck von Oracle an.

Stellen Sie außerdem sicher, dass Sie folgende Optionen in Ihren Kernel kompilieren:

    options SYSVSHM #SysV shared memory
    options SYSVSEM #SysV semaphores
    options SYSVMSG #SysV interprocess communication

### 11.6.3.2. Oracle-Benutzer anlegen

Legen Sie den Account `oracle` an. Der Account unterschiedet sich von normalen Accounts dadurch, dass er eine Linux-Shell zugeordnet bekommen muss. Fügen Sie `/compat/linux/bin/bash` in die Datei `/etc/shells` ein und setzen Sie die Shell für den `oracle`-Account auf `/compat/linux/bin/bash`.

### 11.6.3.3. Umgebung

Neben den normalen Oracle-Variablen, wie z.B. `ORACLE_HOME` und `ORACLE_SID` müssen Sie die folgenden Variablen setzen:

Variable | Wert
--- | ---
`LD_LIBRARY_PATH` | `$ORACLE_HOME/lib`
`CLASSPATH` | `$ORACLE_HOME/jdbc/lib/classes111.zip`
`PATH` | `/compat/linux/bin /compat/linux/sbin /compat/linux/usr/bin /compat/linux/usr/sbin /bin /sbin /usr/bin /usr/sbin /usr/local/bin $ORACLE_HOME/bin`

Es ist empfehlenswert, alle Variablen in der Datei `.profile` zu setzen. Ein komplettes Beispiel sieht folgendermaßen aus:

    ORACLE_BASE=/oracle; export ORACLE_BASE
    ORACLE_HOME=/oracle; export ORACLE_HOME
    LD_LIBRARY_PATH=$ORACLE_HOME/lib
    export LD_LIBRARY_PATH
    ORACLE_SID=ORCL; export ORACLE_SID
    ORACLE_TERM=386x; export ORACLE_TERM
    CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip
    export CLASSPATH
    PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin
    PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
    PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
    export PATH

## 11.6.4. Oracle installieren

Auf Grund einer kleinen Unregelmäßigkeit im Linux-Emulator müssen Sie das Verzeichnis `.oracle` unter `/var/tmp` erzeugen, bevor Sie das Installationsprogramm starten. Das Verzeichnis muss dem Account `oracle` gehören. Sie sollten Oracle nun ohne Probleme installieren können. Treten dennoch Probleme auf, überprüfen Sie zuerst Ihre Oracle-Distribution und Ihre Konfiguration. Nachdem Sie Oracle erfolgreich installiert haben, installieren Sie die Patches wie in den zwei folgenden Abschnitten beschrieben:

Ein häufiges Problem ist, dass der TCP Protokoll-Adapter nicht korrekt installiert wird. Daraus folgt, dass Sie keine TCP-Listener starten können. Dieses Problem kann durch folgende Schritte behoben werden:

    # cd $ORACLE_HOME/network/lib
    # make -f ins_network.mk ntcontab.o
    # cd $ORACLE_HOME/lib
    # ar r libnetwork.a ntcontab.o
    # cd $ORACLE_HOME/network/lib
    # make -f ins_network.mk install

Vergessen Sie nicht, `root.sh` nochmals auszuführen!

### 11.6.4.1. root.sh patchen

Während der Oracle-Installation werden einige Aktionen, die als `root` ausgeführt werden müssen, in ein Shell-Skript mit dem Namen `root.sh` gespeichert. Dieses Skript befindet sich im Verzeichnis `orainst`. Verwenden Sie folgenden Patch für `root.sh`, damit es das richtige `chown` Kommando verwendet, oder lassen Sie das Skript alternativ unter einer Linux-Shell ablaufen:

    *** orainst/root.sh.orig Tue Oct 6 21:57:33 1998
    --- orainst/root.sh Mon Dec 28 15:58:53 1998
    ***************
    *** 31,37 ****
    # This is the default value for CHOWN
    # It will redefined later in this script for those ports
    # which have it conditionally defined in ss_install.h
    ! CHOWN=/bin/chown
    #
    # Define variables to be used in this script
    --- 31,37 ----
    # This is the default value for CHOWN
    # It will redefined later in this script for those ports
    # which have it conditionally defined in ss_install.h
    ! CHOWN=/usr/sbin/chown
    #
    # Define variables to be used in this script

Wenn Sie Oracle nicht von CD-ROM installieren, können Sie Quelldatei für `root.sh` verändern. Sie heißt `rthd.sh` und befindet sich im `orainst`-Verzeichnis des Quellcodebaums.

### 11.6.4.2. genclntsh patchen

Das Skript `genclntsh` wird verwendet, um eine Shared-Library für Clients zu erzeugen. Diese wird bei der Erzeugung der Demos verwendet. Verwenden Sie folgenden Patch, um die Definition von `PATH` auszukommentieren:

    *** bin/genclntsh.orig Wed Sep 30 07:37:19 1998
    --- bin/genclntsh Tue Dec 22 15:36:49 1998
    ***************
    *** 32,38 ****
    #
    # Explicit path to ensure that we're using the correct commands
    #PATH=/usr/bin:/usr/ccs/bin export PATH
    ! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
    #
    # each product MUST provide a $PRODUCT/admin/shrept.lst
    --- 32,38 ----
    #
    # Explicit path to ensure that we're using the correct commands
    #PATH=/usr/bin:/usr/ccs/bin export PATH
    ! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
    #
    # each product MUST provide a $PRODUCT/admin/shrept.lst

## 11.6.5. Oracle starten

Wenn Sie den Anweisungen gefolgt sind, sollten Sie nun in der Lage sein, Oracle zu starten, genau so, wie Sie dies auch unter Linux tun würden.

Zurück | Zum Anfang | Weiter
MATLAB® installieren | Nach oben | Weiterführende Themen

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.