Linux: Oracle Instant Client ist nicht gleich Instant Client

28. März 2014 Aus Von Markus Flechtner

Der Oracle Instant Client ist seit Oracle 10.1 die einfachere Variante des Oracle Clients. Während der Standard-Client als (aktuell) etwa 900 MB großes Medium (ZIP-Datei) daherkommt, die über den Oracle Universal Installer installiert werden muss, ist der Instant Client klein, modular, für mehr Betriebssysteme verfügbar und einfacher zu installieren.

Aus dem „Instant-Client-Baukasten“ kann man folgende Komponenten auswählen:

  • Basic Package
  • Basic Package lite (weniger Sprachen und Zeichensätze werden unterstützt)
  • JDBC Supplement
  • SQL*Plus
  • SDK
  • ODBC
  • WRC Client ( für Oracle Real Application Testing)
  • Precompiler-Package

Unter Linux kann man noch zwei Installationsvarianten wählen:

1. ZIP-Datei (wie bei den anderen Betriebssystemen)

2. rpm

Beide Installationen unterscheiden sich in einigen Kleinigkeiten, die aber wichtig sein können:

rpm-Variante ZIP-Variante
Installation (üblicherweise) als Root Der User, der den client nutzen will
Zielverzeichnis (am Beispiel 12c-Client / 64-bit) /usr/lib/oracle/12.1/client64 Unterverzeichnis instant_client_12_1 des Verzeichnis, in dem die ZIP-Datei ausgepackt wird
Verzeichnisstruktur /usr/lib/oracle/12.1/client64

+– bin

+– lib

Alle Dateien im Installationsverzeichnis
Umgebungsvariablen LD_LIBRARY_PATH: /usr/lib/oracle/12.1/client/64/lib anhängen

PATH: /usr/lib/oracle/12.1/client/64/bin anhängen

An LD_LIBRARY_PATH und PATH den Pfad des Installationsverzeichnisses anhängen

 

Der letzte Punkt zeigt, dass die rpm-Variante durch die Aufteilung Libraries und Executables sich mehr an dem „Oracle-Standard“ orientiert als die ZIP-Variante.

Für die rpm-Variante ist also ein oratab-Eintrag der Form

INSTANTCLIENT121:/usr/lib/oracle/12.1/client64:N

denkbar um z.B. mit oraenv die Umgebung einfach umzustellen

(OK, oraenv gibt es üblicherweise nur auf Datenbank-Servern und da ist der Client auch mit installiert, aber es kann ja nötig sein, z.B. zusätzlich zu einer 11.2-Datenbank einen 12c-Client zu installieren).

Um die ZIP-Variante derart „standard-näher“ zu gestalten, helfen zwei symbolische Links:

cd <instantclient-verzeichnis>

ln -s . bin

ln -s . lib

und ein passender Eintrag in der oratab

INSTANTCLIENT121:/u00/app/oracle/product/instantclient_12_1:N

Zusammengefasst:

Für reine Client-Installationen ist der Instant-Client meiner Ansicht nach die Variante der Wahl. Der „Standard-Client“ ist in den meisten Fällen „oversized“. Unter Linux sind die beiden Installations-Varianten zu beachten, ansonsten können z.B. falsch gesetzte Pfade zu Problemen führen.