Eine Oracle-Datenbank kann über mehrere Instanzen auf mehreren Rechnern angelegt sein, so daß der Datenbankdienst zu einem verteilten Dienst wird.
Vor Oracle8i wurde ein Oracle-Datenbankdienst mit einem Oracle-Systembezeichner (SID) identifiziert. Der SID wurde auch intern von der Datenbank als Zeiger zu der System Global Area (SGA) verwendet. Clients haben sich bei einer Datenbankinstanz mit Angabe der SID im Verbindungsdeskriptor angemeldet. Bei diesem Benennungsschema wurden Dienste nicht von Instanzen unterschieden.
In Oracle8i wurde ein neues Benennungsschema implementiert. Da eine Oracle-Datenbank über mehrere Rechner reichen kann, werden sowohl ein Dienst als Ganzes als auch jede der Instanzen angegeben.
Dienstname
Eine Datenbank wird jetzt mit ihrem Dienstnamen mit dem Parameter SERVICE_NAMES in der Initialisierungsdatei identifiziert. SERVICE_NAMES gibt den Namen der View der höchsten Ebene des Oracle-Datenbankdienstes an, die über mehrere Instanzen und/oder Knoten reichen kann. SERVICE_NAMES entspricht standardmäßig dem globalen Datenbanknamen, einem Namen, der aus dem Datenbanknamen (DB_NAME) und dem Domänennamen (DB_DOMAIN) besteht.
Instanzname
Datenbankinstanzen werden von einem Instanznamen mit dem Parameter INSTANCE_NAME in der Initialisierungsdatei identifiziert. INSTANCE_NAME entspricht dem SID der Instanz.
Verbindungsdeskriptoren
Verbindungsdeskriptoren, die von Clients benutzt werden, müssen mit dem Parameter SERVICE_NAME (ohne S) konfiguriert werden, damit sie sich bei einer Oracle8i-Datenbank anmelden können. Mit dem Net8-Konfigurationsassistenten können Sie Verbindungsdeskriptoren mit dem Parameter SERVICE_NAME in einer Datei tnsnames.ora konfigurieren. Der folgende Verbindungsdeskriptor enthält z.B. die Adresse eines Listeners auf sales1-sun, der auf Verbindungsanforderungen für einen Datenbankdienst mit der Bezeichnung sales.us.acme.com hört:
sales=
(description=
(address=(protocol=tcp)(host=sales-sun1)(port=1521))
(connect_data=
(service_name=sales.us.acme.com)))
|
Siehe auch: |
Net Service Name in einer Datei tnsnames.ora erstellen
Optional kann der Verbindungsdeskriptor auch mit dem Parameter INSTANCE_NAME konfiguriert werden, um die Verbindung zu einer bestimmten Instanz der Datenbank herzustellen. Dies ist möglicherweise erforderlich, wenn mit einem Oracle Parallel Server mit mehreren Instanzen gearbeitet wird.
So enthält z.B. der folgende Verbindungsdeskriptor die Adresse eines Listeners auf sales-sun1, der auf Verbindungsanforderungen für eine Instanz mit der Bezeichnung sales1 hört, die mit der Datenbank sales.us.acme.com verknüpft ist:
sales=
(description=
(address=(protocol=tcp)(host=sales-sun1)(port=1521))
(connect_data=
(instance_name=sales1)
(service_name=sales.us.acme.com)))
Dies ist eine erweiterte Funktion, die vom Net8-Konfigurationsassistenten nicht unterstützt wird.
|
Weitere Informationen: Siehe Kapitel 8, Erweiterte Net8-Funktionen aktivieren, im Net8 Administrator's Guide für weitere Informationen über die Angabe eines Instanznamens im Teil CONNECT_DATA eines Verbindungsdeskriptors. |