TAKTUM Logo


Oracle SQL*Net: Tutorial Oracle SQL*Net einrichten
Anleitung zum Einrichten von Oracle SQL*Net

Konfiguration von SQL*Net auf dem Client.

Das Programm (Client), das die Verbindung zu einer Oracle Datenbank herstellen soll benutzt
eine Steuerdatei sqlnet.ora um die Auflösungsmethode des Alias zu ermitteln.
Die Steuerdatei sqlnet.ora befindet sich i.A. im Verzeichnis $ORACLE_HOME/network/admin.
Siehe hierzu auch den Hinweis zu TNS_ADMIN.

Einträge in der Steuerungsdatei sqlnet.ora

- Trace- und Logginglevel sowie entsprechende Verzeichnisse
- Reihenfolge und verwendete Naming Methods

Beispiel: NAMES.DIRECTORY_PATH=(tnsnames, ezconnect, nis) # Naming Methods, Reihenfolge wichtig, tnsnames => tnsnames.ora wird benutzt NAMES.DEFAULT_DOMAIN=workshop.de # Default Domain Name der an jeden ALIAS ohne Domain angehängt wird USE_DEDICATED_SERVER=ON # Erzwingt beim Listener einen Dedicated - Server # für alle Sitzungen von diesem Client

Auflösung des Alias mit der Steuerungsdatei tnsnames.ora

Hierbei findet ein sogenanntes "Local Naming" mit der Datei tnsnames.ora
da sich diese Datei i.d.R. auf dem Client im network/admin Verzeichniss befindet.
Siehe hierzu auch den Hinweis zu TNS_ADMIN und IFILE.

Beispiel tnsnames.ora: PROD.WORKSHOP.DE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = workshop)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = workshop)(PORT = 1526)) ) (CONNECT_DATA =(SERVICE_NAME = PROD.WORKSHOP.DE) ) ) PROD2 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = workshop)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PROD.WORKSHOP.DE) (SERVER = DEDICATED) ) )

Bei dem ersten Beispiel kann der Anwender z.B. mit dem Programm sqlplus wie folgt eine Verbindung zur Datenbank
herstellen:

sqlplus [user]/[pwd]@PROD.WORKSHOP.DE # Auflösung funktioniert, Eintrag wird in der tnsnames.ora gefunden sqlplus [user]/[pwd]@PROD # Auflösung funktioniert auc, PROD wird um Default Domain aus sqlnet.ora # erweitert sqlplus [user]/[pwd]@PROD2 # Auflösung fkt. nicht über die tnsnames.ora, # da PROD2.WORKSHOP.DE nicht in tnsnames.ora steht # weiterer Versuch der Auflösung über ezconnect und nis offen sqlplus [user]/[pwd]@PROD2. # Auflösung fkt. da nach dem Punkt der Default Domain Name nicht mehr # angefügt wird.

Sowohl die Steuerdatei sqlnet.ora als auch die tnsnames.ora können manuell editiert oder mit Werkzeugen
wie dem Oracle Net Manager (beide Dateien) oder dem Net-Konfigurationsassistent (nur tnsnames.ora) und
SQL Net Easy Configuration (ältere Version, nur tnsnames.ora) konfiguriert werden.

Wird die Auflösung über eine andere Methode durchgeführt, existieren sicherlich andere Werkzeuge
für die Konfiguration der Einträge.

Hinweise:

- alle genannten Programme suchen die Steuerdateien normalerweise im Verzeichniss
$ORACLE_HOME/network/admin. Mit der Umgebungsvariablen TNS_ADMIN kann dieser
Pfad auf ein anderes z.B. zentrales Verzeichniss umgestellt werden.

- mit dem Parameter IFILE=[dateiname] kann z.B. in der Datei tnsnames.ora eine
andere Konfigurationsdatei hinzugelesen werden die sich z.B. auf einem Netzlaufwerk
befindet.

- der Begriff "Client":
Mit Client ist nicht nur der Arbeitsplatzrechner eines Anwenders gemeint.
Es kann auch auf dem Datenbankrechner selbst ein Oracle Client installiert werden,
oder auf einem Kommunikationsrechner die beide ebenso einen Client darstellen und wie hier beschrieben
konfiguriert werden müssen.

Auch bei der Benutzung eines Oracle ODBC Treibers muss diese Konfiguration durchgeführt
werden und die Information erhalten wo sich die Datenbank befindet aus der die Daten abgerufen
und verarbeitet werden sollen.

- Oracle Instantclient ist ein minimales Paket mit dem z.B. per ODBC oder anderen Treibern eine
Verbindung zu einer Oracle Datenbank hergestellt werden kann, enthält auch z.B. sqlplus um
adhoc SQL Befehle absetzen zu können.



Stichwörter

oracle sqlnet verbindung client server webservice tnsnames onames ldap benennungsmethoden auflösungsmethoden tnsnames.ora sqlnet.ora ifile