Oracle Database XE auf Debian, Ubuntu und Kubuntu installieren

By Todd Trichler

Was geschieht, wenn Sie versuchen, Oracle Database XE Beta auf einer neuen Linux-Distribution zu installieren? Sie lernen einiges dazu!

Aktualisiert August 2007 - LinuxWorld Mexico Installfest

In meiner täglichen Arbeit arbeite ich ziemlich viel mit .rpm-basierten Linux-Distributionen in Form von RHEL, SLES und Asianux. Kürzlich ist mir aufgefallen, dass in der Oracle Database XE -Dokumentation der Support für Debian erwähnt wird. Meine Gesamterfahrung damit könnte am besten als stellvertretend beschrieben werden, da ich Oracle noch nie auf einer .deb-basierten Distribution installiert hatte.

Was folgt, ist eine Anleitung einer Person durch die technischen Schritte zur Installation der Beta-Version von Oracle Database XE auf Kubuntu 5.10 Breezy, einer Linux-Distribution, die auf dem .deb-Paketformat und KDE basiert. Die gewonnenen Erkenntnisse und Vorschläge gelten auch für Debian, Ubuntu und andere .deb-Distributionen.

Wenn Sie an der „Hintergrundgeschichte“ über diese Journey von den verschiedenen PHP-Entwicklern und Leuten, die auf dem Weg geholfen haben, interessiert sind, lesen Sie bitte die Sidebar.

Update (März 2006): Mit Oracle Database XE in der Produktion ist es noch einfacher, Oracle auf Debian-basierten Distributionen zu installieren (dank Joel Becker).

Es gibt jetzt ein Apt-get-Repository auf oss.oracle.com für XE. Einfach Folgendes hinzufügen:

deb http://oss.oracle.com/debian unstable main non-free

zu /etc/apt/sources.list und dann:

# wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add - # apt-get update # apt-get install oracle-xe 'libaio' und 'bc' befinden sich im Repository, daher ziehen Abhängigkeiten sie ein, wenn der Benutzer sie nicht hat. (Hinweis: Sie benötigen "sudo" oder "root"-Berechtigungen, um XE zu installieren.)

Allgemeiner Haftungsausschluss: Diese Schritte haben bei meiner Konfiguration funktioniert; Sie funktionieren möglicherweise nicht bei Ihrer.

Laden Sie eine ISO-Version von Kubuntu Breezy herunter und brennen Sie eine Installations-CD.

Führen Sie eine Standardinstallation von Kubuntu durch. Wenn Sie dazu aufgefordert werden, wählen Sie "Gesamte Festplatte löschen und LVM verwenden".

Setzen Sie keine Kernelparameter, da die neuesten Beta-Versionen von XE die Parameter überprüfen und gegebenenfalls erhöhen sollen. (Hinweis: Wenn Sie eine ältere Beta verwenden, sollten Sie diese überprüfen; besser, laden Sie die neueste Version herunter.)

Stellen Sie sicher, dass die vorausgesetzten (Glibc- und libaio-äquivalenten) Librarys installiert sind. Auf Kubuntu und Ubuntu heißen sie "libc6" und "libaio1". (Ich habe Adept, das neue GUI-Packageverwaltungstool, zur Installation von libaio1 verwendet. libc6 wurde bereits installiert.) Wie Wim Coekaerts in seinem Podcast zu diesem Thema beschrieb, müssen Sie derzeit Debian unstable verwenden, um die entsprechenden Pakete zu erhalten, aber in Zukunft würden sie mit Debian sid enthalten sein.

Als _root_ mit der Installation der neuesten verfügbaren Oracle XE Beta begann:

todd@kubuntu:~$ su - root@kubuntu:~# cd /home/todd/Desktop root@kubuntu:/home/todd/Desktop# ls DapperDevStatus02-Feb-2006.pdf oracle-xe_10.2.0.1-0.060128_i386.deb trash.desktop root@kubuntu:/home/todd/Desktop# dpkg -i oracle-xe_10.2.0.1-0.060128_i386.deb Auswählen des zuvor deselektierten Pakets oracle-xe. (Datenbank wird gelesen ... 58594 derzeit installierte Dateien und Verzeichnisse.) Entpacken von oracle-xe (von oracle-xe_10.2.0.1-0.060128_i386.deb) ... Dieses System erfüllt nicht die Mindestanforderungen für Auslagerungsspeicher. Basierend auf der Menge des auf dem System verfügbaren physischen Speichers benötigt Oracle Database 10g Express Edition 1.006 MB Auslagerungsspeicher. Dieses System verfügt über 799 MB Auslagerungsspeicher. Konfigurieren Sie mehr Auslagerungsspeicher auf dem System und wiederholen Sie die Installation. dpkg: Fehler bei der Verarbeitung von oracle-xe_10.2.0.1-0.060128_i386.deb (--install): Unterprozess-Präinstallationsskript gab Fehler-Exit-Status zurück, während der Verarbeitung trat 1 Fehler auf: oracle-xe_10.2.0.1-0.060128_i386.deb root@kubuntu:/home/todd/Desktop#

Hinweis: Ich würde nicht empfehlen, diese Art von Befehlen zum Hinzufügen von Auslagerungsspeicher zu verwenden, es sei denn, Sie verstehen, was sie tun, oder Sie vertrauen der Person, die die Korrektur empfohlen hat, und sie ist mit Ihrem System vertraut. Besser noch, fügen Sie genug Auslagerungsspeicher hinzu, um damit zu beginnen. Gut platzierte Quellen sagen mir, dass dies zu dem Zeitpunkt, zu dem Kubuntu 6.04 Dapper in Produktion geht (April 2006?), möglicherweise kein Problem mehr darstellt.

root@kubuntu:/home/todd/Desktop# dpkg -i oracle-xe_10.2.0.1-0.060128_i386.deb (Datenbank wird gelesen ... 62016 derzeit installierte Dateien und Verzeichnisse.) Entpacken von oracle-xe (von oracle-xe_10.2.0.1-0.060128_i386.deb) ... Einrichten von oracle-xe (10.2.0.1-0.060128) ... Oracle Database 10g Express Edition ist nicht konfiguriert. Sie müssen '/etc/init.d/oracle-xe configure' als Root-Benutzer ausführen, um die Datenbank zu konfigurieren. Ausführen von Schritten nach der Installation... Sie müssen '/etc/init.d/oracle-xe configure' als Root-Benutzer ausführen, um die Datenbank zu konfigurieren.

Obwohl sie zu diesem Zeitpunkt installiert ist, müssen Sie sie noch konfigurieren:

root@kubuntu:/home/todd/Desktop# /etc/init.d/oracle-xe configure

Konfiguration der Oracle Database 10g Express Edition

Oracle Database XE

Oracle Database XE

So werden die On-Boot-Eigenschaften von Oracle Database XE konfiguriert. Die folgenden Fragen bestimmen, ob die Datenbank beim Systemstart gestartet werden soll, welche Ports verwendet werden und welche Passwörter für Datenbankkonten verwendet werden. Drücken Sie die Eingabetaste, um die Standardwerte zu übernehmen. Strg-C für Abbruch.

Geben Sie den HTTP-Port an, der für Oracle Application Express [8080] verwendet wird: Geben Sie einen Port an, der für den Datenbank-Listener [1521] verwendet wird: Geben Sie ein Kennwort an, das für Datenbankaccounts verwendet werden soll. Beachten Sie, dass für SYS und SYSTEM dasselbe Kennwort verwendet wird. Oracle empfiehlt die Verwendung unterschiedlicher Kennwörter für jeden Datenbankaccount. Dies kann nach der anfänglichen Konfiguration erfolgen: Bestätigen Sie das Kennwort: (* Stellen Sie sicher, dass Sie dieses Kennwort speichern *) Möchten Sie Oracle Database 10g Express Edition beim Booten starten (y/n) [y]: y Oracle Net Listener wird gestartet... Konfiguration der Datenbank abgeschlossen... Oracle Database 10g Express Edition-Instanz wird gestartet... Installation erfolgreich abgeschlossen. Um auf die Datenbank-Homepage zuzugreifen, gehen Sie zu "http://127.0.0.1:8080/apex" root@kubuntu:/home/todd/Desktop#

An diesem Punkt können Sie Firefox http://127.0.0.1:8080/apex starten, sich als „System“ mit dem „Kennwort“ anmelden, das Sie während der Installation erstellt haben. Nun sollten Sie die XE-Homepage sehen:

Häufig gestellte Fragen (FAQ) in Bezug auf bekannte Fallstricke und Problemumgehungen:

Q. Wo befinden sich meine Menüpunkte nach der Installation?
A. Mit dieser Beta-Version finden Sie die verlorenen Menüelemente von XE im passend benannten Lost & Found. Bevor Sie jedoch mit dem Menüeditor von KDE die Struktur korrigieren, versuchen Sie einen Neustart. Für mich schien ein Neustart die Menüstruktur aufzufrischen und ein vorzeigbareres Menü anzubieten.

Q. Geringfügige Anomalie bei Menüelementen nach dem Neustart: Das aktualisierte Menü enthält immer noch den zusätzlichen  Punkt „Erste Schritte mit XE“. Warum?
A. Ich schätze, sie wollen wirklich, dass wir mit XE anfangen!

Q. Wie kommt es, dass mein Benutzer 'todd' über den erstellten Menüpunkt die Datenbank nicht starten kann
F. Wie kommt es, dass mein Benutzer 'todd' über den erstellten Menüpunkt die Datenbank nicht starten kann
A. Benutzer 'todd' ist kein Mitglied der 'dba'-Gruppe. Sie können den Benutzer hinzufügen, indem Sie im Adminstratormodus zu den Systemeinstellungen navigieren und Benutzer 'todd' hinzufügen.

Q. Aus irgendeinem Grund passt das Standardverhalten in Konqueror nicht gut zu den XE-Menüelementen.
A. Die einfachste Lösung hier ist die Verwendung von Adept zur Installation von Firefox. Sie haben kürzlich an Firefox gearbeitet und es läuft auf Kubuntu ziemlich stabil.

Q. Warum bekomme ich ein "bc", wenn ich auf der Kubuntu-Serverversion installiere?
A Die bc-Fehler sind darauf zurückzuführen, dass dieses Paket nicht wie in der Desktop-Version installiert ist. Führen Sie entweder a#apt-get install oracle-xe von oss.oracle.com aus, um das Paket „bc“ einzulesen, oder installieren Sie es manuell, bevor Sie XE installieren.

Q. Wenn ich XE auf der Kubuntu-Serverversion installiere, werden manchmal die XE-Menüoptionen in Lost&Found angezeigt. Warum?
A. Dies geschieht, weil XE erwartet, dass KDE bereits vorhanden ist. Wenn Sie die Kubuntu-Serverversion installieren, führen Sie zuerst ein #apt-get install kubuntu-desktop firefox aus und installieren erst dann XE ( #apt-get install oracle-xe). Die grafischen Menüoptionen sind korrekt.

Wenn Sie interessante Links zur Installation von XE auf anderen Distributionen haben, posten Sie diese bitte über die E-Mail "Kommentare". Nachdem ich mir die Unterschiede zwischen den dpkg- und .rpm-basierten Systemen angesehen habe, hat mich meine Neugier überwältigt und ich möchte die Nuancen vergleichen.

 

Entstehung eines .deb-Pakets

Als XE 2005 herauskam, habe ich die .rpm-Version heruntergeladen und erfolgreich auf RHEL4 und SLES9 installiert. Da es auch Debian-basierte Distributionen unterstützen würde, entschied ich mich, es auf einer zu installieren. Ich habe Kubuntu als Ziel-BS gewählt, vor allem, weil es eine .deb-basierte Distro ist, die meinen vertrauten KDE-Desktop verwendet. Meiner Meinung nach ist KDE für Neulinge und Menschen mit Windows-Hintergrund einfacher. (Wenn Sie Gnome Desktop bevorzugen, können Sie dies auf Ubuntu versuchen.) Das einzige große Problem, das ich mit Kubuntu habe, ist, dass Firefox nicht standardmäßig installiert ist.

Im November habe ich das 'Alien'-Tool verwendet, um aus der .rpm-Version ein .deb-Paket zu erstellen, und konnte eine rudimentäre Datenbank mit vielen Fehlern und verstümmelten Menüs installieren. Als ich Wim nach den Menüs fragte, sagte er, dass Joel Becker in unserem Linux-Kernel-Team ein .deb-Paket erstellen wollte.

Entwickler sind „territorial“; Sie "markieren gerne ihr Revier" und sind die besten Verfechter ihrer gewählten Technologien. Paul Scott, ein IT-Administrator einer südafrikanischen Universität, kümmerte sich um seine eigenen Angelegenheiten und saß während der International PHP Conference mit seinem Laptop in einer Frankfurter Lobby. Auf seinem Laptop war ein Debian und ein weiterer Aufkleber, den ich gesehen hatte, als er zusammen mit Ubuntu-CDs verteilt wurde. Es stellt sich heraus, dass er nicht nur mit dem Paketsystem von Debian vertraut ist, sondern auch Pakete für Ubuntu64 Linux erstellt hat. Auf dem Installfest trafen wir auch den Österreicher Clemens Fink, der bei einem früheren Fest Oracle Database 10g EE erfolgreich auf seinem eigenen, benutzerdefinierten Debian-Kernel installiert hatte.

Paul und Clemens verbrachten ungefähr 4 Stunden damit, die Menüs der ursprünglichen Alpha-Version von OracleXE.deb zu bereinigen, während ich über ihre Fähigkeit staunte, sich mit den Unterschieden zwischen dem .rpm-Menüsystem, für das XE ursprünglich entwickelt wurde, und dem dpkg-System zurechtzufinden. Etwa 30 Minuten später hatten sie eine funktionierende Version. Sie verbrachten dann den Rest der Zeit damit, es zu „debianisieren“ und sicherzustellen, dass es richtig oder auf „Debian-Art“ gemacht wurde – ich denke, wenn es eine Herzensangelegenheit ist und Sie mit den von Ihnen gewählten Technologien arbeiten, ist die Liebe zum Detail ganz selbstverständlich. Danke Leute!

Als ich zurück ins Hauptquartier kam, richtete Joel einen Arbeitsbereich ein, den wir für die Zusammenarbeit nutzen konnten, wobei Joel die neuesten Tar Balls von ST erhielt. Nach dieser Zusammenarbeit zwischen sechs Städten, drei Kontinenten und mehreren Kulturen und mehreren Iterationen später wurde die Beta-Version von oracle-xe_10.2.0.1-0.060128_i386.deb geboren.