ubuntuusers.de

Du betrachtest eine alte Revision dieser Wikiseite.

Oracle

Fehlendes Makro

Das Makro „Getestet“ konnte nicht gefunden werden.

Fehlendes Makro

Das Makro „Fortgeschritten“ konnte nicht gefunden werden.

 * [1]: [:Pakete installieren: Installation von Programmen]
 * [2]: [:Paketquellen freischalten: Bearbeiten von Paketquellen]
 * [3]: [:Terminal: Ein Terminal öffnen]
 * [4]: [:Programme starten: Ein Programm starten]
 * [5]: [:Paketinstallation_DEB: Ein einzelnes Paket installieren]

Oracle ist eine im Silicon Valley ansässige Firma, die auf Datenbankmanagement-Syteme (DBMS) und damit verwandte Produkte spezialisiert ist. Oracle-Datenbanken richten sich an erfahrene Anwender und Administratoren und finden sich hauptsächlich in größeren Unternehmen, die gesteigerte Ansprüche an Datenhaltung und Datenverwaltung haben. Dieser Artikel soll einen Überblick über die Installation und Konfiguration der gängigen Oracle Client / Server-Software unter Ubuntu liefern.

 * Jeder der hier beschriebenen downloads erfordert eine vorherige (einmalige) Registrierung, diese bringt aber keine weiteren Verpflichtungen mit sich.
 * Die hier beschriebenen Oracle-Produkte stehen '''nicht''' unter einer GPL-kompatiblen Lizenz.

SQL*Plus

"Was" SQL*Plus ist und wofür man es gebrauchen kann wird bereits in der wikipedia hier sehr schön beschrieben, deshalb sei an dieser Stelle ein Zitat erlaubt:

SQL*Plus ist ein kommandozeilenorientiertes Verwaltungswerkzeug zur Administration und Bedienung von Oracle-Datenbanken. 
SQL*Plus steht auf jedem Rechnersystem zur Verfügung, auf dem die Oracle Client- oder Serversoftware installiert ist.
Hiermit lassen sich alle Verwaltungstätigkeiten wie Startup und Shutdown einer Datenbank, Erweiterung von 
Tablespaces (Speicherbereichen einer Oracle Datenbank), Vergabe von Benutzerrechten, Erstellung logischer Datenbankobjekte 
wie Tabellen, Indizes, Views, Synonyme und Stored Procedure sowie die Eingabe, Änderung, Abfrage und
Löschen der eigentlichen Dateninhalte vornehmen.

Installation

libaio1

Zunächst einmal benötigen wir libaio1. Dies kann direkt über die Ubuntu-Quellen bezogen werden. Dazu muss folgendes Paket installiert [1] werden:

  • libaio1 (main, [2])

alien

Da SQL*Plus leider weder im Quellcode noch als Ubuntu-Paket erhältlich ist, sondern ausschließlich als rpm, benötigen wir das Programm alien um das rpm in ein Debian-Paket umzuwandeln. alien kann direkt über die Ubuntu-Quellen bezogen werden. Dazu muss folgendes Paket installiert [1] werden:

  • alien (main, [2])

SQL*Plus

Nun können wir SQL*Plus selbst installieren. Wie bereits angemerkt, gibt es dafür nur ein rpm-Paket, welches man von hier beziehen kann.

Dieses rpm-Paket wandeln wir nun in der Konsole in ein Debian-Paket um via:

alien --to-deb oracle-instantclient-sqlplus-**.*.*.*-*.i386.rpm

"**.*.*.*-*" steht hierbei für die verwendete SQL*Plus-Version.

Das generierte SQL*Plus Debian-Paket kann nun entweder über GDebi installiert werden oder über die Konsole mittels:

sudo dpkg -i oracle-instantclient-sqlplus-**.*.*.*-*.i386.deb

Wir sind jedoch noch nicht ganz fertig. Die Bibliotheken von SQL*Plus werden nicht in einem der Standardpfade installiert. Wir müssen also dafür Sorge tragen, das der Pfad zu den SQL*Plus-Bibliotheken in den Library Path aufgenommen wird. Wir müssen also zunächst einmal rauskriegen, wohin die entsprechenen Bibliotheken installiert wurden.

Dazu führen wir in der Konsole folgenden Befehl aus:

dpkg -L oracle-instantclient-sqlplus

Eine mögliche Ausgabe des Befehls könnte so aussehen:

/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/oracle-instantclient-sqlplus
/usr/share/doc/oracle-instantclient-sqlplus/changelog.Debian.gz
/usr/share/doc/oracle-instantclient-sqlplus/copyright
/usr/bin
/usr/lib
/usr/lib/oracle
/usr/lib/oracle/11.1.0.1
/usr/lib/oracle/11.1.0.1/client
/usr/lib/oracle/11.1.0.1/client/bin
/usr/lib/oracle/11.1.0.1/client/bin/sqlplus
/usr/lib/oracle/11.1.0.1/client/lib
/usr/lib/oracle/11.1.0.1/client/lib/libsqlplus.so
/usr/lib/oracle/11.1.0.1/client/lib/glogin.sql
/usr/lib/oracle/11.1.0.1/client/lib/libsqlplusic.so
/usr/bin/sqlplus

An obiger Ausgabe kann man sehen, dass sich die gesuchten Bibliotheken im Pfad

/usr/lib/oracle/11.1.0.1/client/lib/

befinden.

Diesen Pfad fügen wir nun unserem Library Path hinzu mittels:

sudo echo "/usr/lib/oracle/11.1.0.1/client/lib/"  >> /etc/ld.so.conf 

Abschließend lassen wir den Library Path vom System neu bauen:

sudo ldconfig

SQL*Plus ist damit installiert und benutzbar.

Benutzung/Konfiguration

Starten läßt sich SQL*Plus über die Konsole mittels:

sqlplus

Generell bietet es sich an eine Datei namens tnsnames.ora anzulegen. In dieser werden Oracle Services auf Namen "gemappt". Sinn und Zweck dieser Geschichte ist es, auf einfache Art und Weise auf Datenbank-Instanzen zugreifen zu können, ohne die Details der Verbindung auswendig zu wissen.

Damit SQL*PLUS diese Datei auch findet legen wir diese in einem Verzeichnis unserer Wahl an und setzen anschließend die Umgebungsvariable $TNS_ADMIN auf dieses Verzeichnis, z.B. so:

export TNS_ADMIN=/Verzeichnis/eurer/Wahl/

Eine beispielhafte tnsnames.ora könnte so aussehen:

my_service =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = yourhost.com)(PORT = mein_port))
   )
   (CONNECT_DATA =
     (SID = your_SID)
     (SERVER = DEDICATED)
   )
 )

Ohne die tnsnames.ora müßten wir die Verbindung ziemlich kryptisch folgendermaßen aufbauen (man beachte die ""):

sqlplus mein_oracle_user/mein_oracle_passwort@"(description=(address=(host=mein_oracle_host)
(protocol=tcp)(port=mein_port))(connect_data=(sid=meine_sid)))"

Mit der "tnsnames.ora" erleichtern wir uns die Arbeit erheblich, da wir nun einfach folgendes in der Konsole eintippen können:

sqlplus mein_user/mein_password@mein_oracle_service

Instant Client

Wofür man den "Instant Client" benötigt wird bereits im deutschsprachigen oracle wiki hier sehr schön beschrieben, deshalb sei an dieser Stelle ein Zitat erlaubt:

Seit der Version 9i liefert Oracle den Client - also die SQL*Net-Treiber - nicht mehr einzeln aus sondern nur noch im Bundle
mit dem Oracle Server. Hat man die CDs gerade nicht zur Hand, muß man daher leider fast 1GB Daten herunterladen, um den Client installieren zu können.

Wer Produkte vertreibt, die auf Oracle aufsetzen und daher den Client benötigen, konnte bislang nicht einfach den Client 
mit vertreiben, da dies durch Oracles Lizenz nicht erlaubt war.

Beide Probleme löst der frei erhältliche "Instant Client", der separat von anderer Oracle-Software (und damit z.B. ohne 
obligatorisches ORACLE_HOME) installiert werden kann. Dieser ist mit etwa 36MB noch relativ schlank. 

Installation

Da der Instant Client leider weder im Quellcode noch als Ubuntu-Paket erhältlich ist, sondern ausschließlich als rpm, benötigen wir das Programm alien um das rpm in ein Debian-Paket umzuwandeln. alien kann direkt über die Ubuntu-Quellen bezogen werden. Dazu muss folgendes Paket installiert [1] werden:

  • alien (main, [2])

Nun können wir Instant Client selbst installieren. Wie bereits angemerkt, gibt es dafür nur ein rpm-Paket, welches man von hier beziehen kann.

Dieses rpm-Paket wandeln wir nun in der Konsole in ein Debian-Paket um via:

alien --to-deb oracle-instantclient-basic-**.*.*.*-*.i386.rpm

"**.*.*.*-*" steht hierbei für die verwendete Instant Client-Version.

Das von alien generierte Instant Client Debian-Paket kann nun entweder über GDebi installiert werden oder über die Konsole mittels:

sudo dpkg -i oracle-instantclient-basic_**.*.*.*-*_i386.deb

SQL Developer

"Was" der SQL Developer ist und wofür man ihn gebrauchen kann wird bereits in der wikipedia hier sehr schön beschrieben, deshalb sei an dieser Stelle ein Zitat erlaubt:

Oracles kostenloses Werkzeug für den Datenbankentwickler läuft als graphisches Java-Programm und ermöglicht das Bearbeiten von 
Datenbankobjekten, Erstellen und Testen von SQL-Statements und Skripten, Erstellen und Debuggen von PL/SQL-Prozeduren einfache 
Datenbankanalyse. Aufbau und Funktionsumfang vom SQL Developer erinnern an TOAD, SQL Navigator oder Hora.

Installation

Der SQL Developer erfordert eine mindestens eine Java Runtime Environment 1.5. Wie man diese installiert, kann hier nachgelesen werden.

alien

Da der "SQL Developer" leider weder im Quellcode noch als Ubuntu-Paket erhältlich ist, sondern ausschließlich als rpm, benötigen wir das Programm alien um das rpm in ein Debian-Paket umzuwandeln. alien kann direkt über die Ubuntu-Quellen bezogen werden. Dazu muss folgendes Paket installiert [1] werden:

  • alien (main, [2])

Wie bereits angemerkt, gibt es dafür nur ein rpm-Paket, welches man von hier beziehen kann. Hierbei sollte man die "Oracle SQL Developer RPM for Linux" auswählen.

Dieses rpm-Paket wandeln wir nun in der Konsole in ein Debian-Paket um via:

alien --to-deb sqldeveloper-**.*.*.*-*.noarch.rpm

"**.*.*.*-*" steht hierbei für die verwendete SQL Developer-Version.

Nun können wir den "SQL Developer" entweder über GDebi installieren oder über die Konsole mittels:

sudo dpkg -i sqldeveloper-**.*.*.*-*.noarch.rpm

Benutzung/Konfiguration

Das Starten des "SQL Developer" erfolgt über die Konsole mittels:

sqldeveloper

Die Bedienung / Konfiguration ist - entsprechende Oracle Kenntnisse vorausgesetzt - intuitiv und selbsterklärend.

Oracle Database 10g Express Edition

Bei der "Express Edition" handelt es sich um die kostenlos erhältliche Variante des Datenbanksystems von Oracle, die im Vergleich zur kostenpflichtigen Variante jedoch in ihrer Funktionalität eingeschränkt ist:

  • Die Express Edition verwendet maximal 1 RAM und maximal eine CPU

  • Es können maximal 4 Gigabyte an Daten angelegt und verwaltet werden

Die folgende Anleitung gilt ausschließlich für die sogenannte "Express Edition", '''nicht''' für die Standard Edition! 

Installation

Zunächst einmal benötigen wir libaio1. Dies kann direkt über die Ubuntu-Quellen bezogen werden. Dazu muss folgendes Paket installiert [1] werden:

  • libaio1 (main, [2])

Für den Fall, das wir eine "Ubuntu Server Edition" verwenden benötigen wir noch das Programm "bc", da dieses nicht bei der Installation mit installiert wird. Dieses installieren wir mittels:

Dazu muss folgendes Paket installiert [1] werden:

Nun zur Installation der Datenbank selbst. Oracle bietet glücklicherweise ein *.deb Paket dafür an, welches wir mit dpkg installieren:

sudo dpkg -i oracle-xe-universal_10.2.0.1-1.0_i386.deb

Benutzung/Konfiguration

Auch nur einen kleinen Teil der Konfigurationsmöglichkeiten von Oracle Datenbanken zu beschreiben, würde den Rahmen jedes Artikels sprengen. Deshalb wird an dieser Stelle nur die absolute Grund-Konfiguration beschrieben.

Oracle liefert glücklicherweise ein Konfigurationsscript für die Basiskonfiguration mit, welches wir folgendermaßen aufrufen:

 /etc/init.d/oracle-xe configure

Das script führt einen interaktiv durch die Konfiguration wie man an unten stehender Ausgabe sehen kann. Für die meisten User werden die eckigen Klammern stehenden Default-Einstellungen in Ordnung sein.

Oracle Database 10g Express Edition Configuration
-------------------------------------------------
This will configure on-boot properties of Oracle Database 10g Express 
Edition.  The following questions will determine whether the database should 
be starting upon system boot, the ports it will use, and the passwords that 
will be used for database accounts.  Press <Enter> to accept the defaults. 
Ctrl-C will abort.

Specify the HTTP port that will be used for Oracle Application Express [8080]:9090

Specify a port that will be used for the database listener [1521]:

Specify a password to be used for database accounts.  Note that the same
password will be used for SYS and SYSTEM.  Oracle recommends the use of 
different passwords for each database account.  This can be done after 
initial configuration:
Confirm the password:

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:n

Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:9090/apex"

Damit ist die Installation und Grundkonfiguration der Datenbank erledigt.


* Kategorie/Server

Diese Revision wurde am 25. Januar 2008 12:24 von jollyroger erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Server, unfreie Software