Oracle Datenbank Unterstützung¶

Dieses Dokument wird die Einrichtung und Vorbereitung des ownCloud-Servers unter Verwendung von Oracle als Backend-Datenbank beschreiben. Für den Zweck der Überprüfung, wird Oracle Enterprise Linux als Web-Server verwendet auf dem ownCloud gehostet wird und die Oracle Dentbank zu Einsatz kommt.

Abriss der Schritte¶

Dieses Dokument umfasst die folgenden Schritte:

  • Aufbau des ownCloud Benutzers in Oracle: Dazu gehört die Einrichtung eines User-Space in Oracle für den Aufbau der ownCloud Datenbank.
  • Installieren des Oracle Instant Clienten auf dem Webserver (Erleichterung der Verbindung zur Oracle-Datenbank).
  • Kompilieren und Installieren des Oracle-PHP Plugin oci8 Moduls
  • Zeigen der Verwendung von ownCloud in der Oracle-Datenbank nach der erstmaligen Installation

Das Dokument geht davon aus, dass Sie bereits eine Oracle-Instanz ausgeführt wird, und die erforderlichen Ressourcen bereitgestellt werden. Es setzt außerdem voraus, dass diese installiert haben mit allen Voraussetzungen die für OwnCloud benötigt werden.

Konfigurieren von Oracle¶

Einrichten des User Space für ownCloud¶

Schritt eins, wenn es nicht bereits eine von Ihren abgeschlossene DBA gibt, Bereitstellung des User Space auf der Oracle-Instanz für ownCloud. Das kann wie folgt durchgeführt werden, in dem Sie sich als DBA anmelden und Sie das nachfolgende Skripts dort ausführen lassen:

CREATE USER owncloud IDENTIFIED BY password;
ALTER USER owncloud DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA unlimited ON users;
GRANT create session, create table, create procedure, create sequence, create trigger, create view, create synonym, alter session TO owncloud;

Ersetzen Sie das Passwort für password durch das von Ihnen aktuell verwendete Passwort. Gegenstände wie Tablespace, Quota, etc. werden von Ihrem DBA bestimmt werden.

Das Herunterladen und die Installation des Oracle Instant Clienten¶

Wie bereits vorab erwähnt, beinhaltet dieses Beispiel die Verwendung von Oracle Enterprise Linux als Webserver, in diesem Fall ist es notwendig, den Oracle Instant Client von der Oracle-Website zu laden, wobei der Dowanlod Ihrem Betriebssystem entsprechen muß.

Hinweis

Laden Sie den Instant-Client und das Instant Client-SDK herunter und legen Sie es in einem Verzeichnis auf dem Server ab, in diesem Beispiel werden RPM-Pakete verwendet.

  • Installieren Sie den Basis-Clienten aus dem RPM-Paket. Verwenden Sie dazu den rpm -ivh Befehl
  • Installieren Sie das SDK RPM-Paket. Verwenden Sie dazu den rpm -ivh Befehl

An dieser Stelle wird der Oracle Instant-Client auf dem ownCloud Host installiert (in das Home-Verzeichnis).

Installieren Sie die OCI8 PHP-Erweiterung:¶

Der nächste Schritt ist das kompilieren und installieren der OCI8 PHP-Erweiterung für die Anbindung an die Oracle Denbank.

  • Erstellen Sie einen Ordner für diese Bits auf Ihrem Server.

  • Laden Sie die neueste Version der Erweiterung von hier http://pecl.php.net/package/oci8 herunter.

  • Packen Sie die PHP-Erweiterung OCI8, die Sie eben erhalten haben, aus und kopieren Sie diese auf Ihren Server.

  • Es sollten sich zwei Dinge in dem Ordner befinden:
    • package.xml Datei
    • oci8-*.*.* Ordner (Ordner der Version der Erweiterung, die Sie heruntergeladen haben und noch verändern).
  • Erstellen Sie das OCI8 Modul.
    • ändern Sie (cd) in den Ordner, in dem Sie die heruntergeladenen und unkomprimierte OCI8 Bits kopiert haben.

    • Führen Sie den folgenden Befehl aus (es wird eine erhebliche Menge an Ausgaben geben) :.

      pecl build
    • Schließlich wird die Ausgabe stoppen und Sie nach dem Oracle Home Directory fragen, drücken Sie dann nur die Eingabetaste.
  • Verzeichnis wechseln:

    cd oci8-<version number>
  • Geben Sie den folgenden Befehl ein:

    ./configure –with-oci8=instantcleint,/usr/lib/oracle/<version number>/client64/lib
  • Wiederum wird es signifikante Ausgaben geben

  • Geben Sie den folgenden Befehl zu kompilieren ein: make

  • Zu diesem Zeitpunkt sollte es einen Ordner namens Module in dem oci8-<version_> Verzeichnis geben. Innerhalb dieser Ordner existiert die oci8.so Datei.

  • Kopieren Sie diese in das Verzeichnis, in dem die Module der PHP-Installation gespeichert sind. Es hängt davon ab welche Distribution Sie verwenden. Das ist der Weg für RHEL 6 und OEL 6:

    cp oci8.so /usr/lib64/php/modules
  • Erstellen Sie die .ini Datei
    • Navigieren Sie zu dem php.d Vrezeichnis: cd /etc/php.d

    • Bearbeiten Sie eine Datei mit dem Namen oci8.ini: vi oci8.ini

    • Erstellen Sie die Datei so, das sie wie folgt aussieht:

      ; Oracle Instant Client Shared Object
      extension=oci8.so
    • Speichern Sie das Dokument

Konfigurieren von ownCloud¶

Der nächste Schritt ist es, ownCloud so zu konfigurieren, dass die Oracle-Datenbank verwendet werden kann, dieses Dokument geht davon aus, dass ownCloud bereits installiert wurde.

Konfigurationsassistent¶

../_images/oracle-1.png

Datenbanbenutzer¶

Das ist die User-Space der in Schritt 2.1 erstellt wurde. In unserem Beispiel würde dies ownCloud werden.

Datenbank-Password¶

Auch dies ist in dem Skript aus Abschnitt 2.1 oben definiert oder vorkonfiguriert worden oder Ihnen von Ihrem DBA vorgegeben worden.

Datenbank Name¶

Stellt die Datenbank oder den Dienst, vorkonfiguriert auf dem TSN Listener auf dem Datenbankserver bereit. Dies sollte auch durch den DBA vorgegeben werden. In diesem Beispiel wird das Standard-Setup in der Oracle-Installation von orcl (es gibt eine TSN Listener Eintrag für orcl auf unserem Datenbankserver) verwendet.

Das ist nicht dasselbe wie die Einrichtung mit MySQL oder SQL Server, die eine Datenbank mit dem Namen, den Sie in der Form erstellt haben, verwendet. Die oci8 Code wird diesen speziellen Kundendienst aufrufen und es muss aktiv an den TSN-Listener auf dem Oracle-Datenbankserver übergeben werden.

Datenbank Tabellen Speicherplatz¶

Vom DBA vorgesehen. In diesem Beispiel wird der Benutzer Tabellenbereich (wie in der Skript-Erstellung Benutzer oben zu sehen ist), verwendet werden.

Konfigurations Dateien¶

Unter der Annahme, das allen Schritten bis zur Fertigstellung gefolgt wurde, sollte die erste Lauf den Assistenten beenden und eine ownCloud-Instanz sollte erscheinen.

Die Konfigurationsdatei sollte wie folgt aussehen:

<?php
$CONFIG = array (
'instanceid' => 'abcdefgh',
'passwordsalt' => '01234567890123456789',
'datadirectory' => '/var/data',
'dbtype' => 'oci',
'version' => '8.0..x.y',
'dbname' => 'orcl',
'dbhost' => '192.168.1.57',
'dbtableprefix' => 'oc_',
'dbuser' => 'owncloud1',
'dbpassword' => '********',
'installed' => true,
);