Suche…


CREATE DATABASE LINK dblink_name 
CONNECT TO remote_username 
IDENTIFIED BY remote_password 
USING 'tns_service_name';

Auf die entfernte Datenbank kann dann folgendermaßen zugegriffen werden:

SELECT * FROM MY_TABLE@dblink_name;

Um eine Datenbankverknüpfungsverbindung zu testen, ohne einen der Objektnamen in der verknüpften Datenbank zu kennen, verwenden Sie die folgende Abfrage:

SELECT * FROM DUAL@dblink_name;

Um eine Domäne explizit für den verknüpften Datenbankdienst anzugeben, wird der Domänenname der USING Anweisung hinzugefügt. Zum Beispiel:

USING 'tns_service_name.WORLD'

Wenn kein Domänenname explizit angegeben ist, verwendet Oracle die Domäne der Datenbank, in der die Verknüpfung erstellt wird.

Oracle-Dokumentation zur Erstellung von Datenbanklinks:

Nehmen wir an, wir haben zwei Datenbanken "ORA1" und "ORA2". Auf die Objekte von "ORA2" können wir über die Datenbank "ORA1" über eine Datenbankverbindung zugreifen.

Voraussetzungen: Zum Erstellen einer privaten Datenbankverbindung benötigen Sie ein CREATE DATABASE LINK Privileg. Zum Erstellen einer privaten Datenbankverbindung benötigen Sie ein CREATE PUBLIC DATABASE LINK Privileg.

* Oracle Net muss in beiden Instanzen vorhanden sein.

So erstellen Sie eine Datenbankverknüpfung:

Von ORA1:

SQL> create <public> database link ora2 connect to user1 identified by pass1 using <tns name of ora2>;

Datenbanklink erstellt

Nun, da wir die DB-Verbindung eingerichtet haben, können wir dies durch Ausführen von ORA1 beweisen:

SQL> Select name from V$DATABASE@ORA2; -- should return ORA2

Sie können auch auf die DB-Objekte von "ORA2" von "ORA1" aus zugreifen, vorausgesetzt der Benutzer user1 verfügt über das SELECT Privileg für diese Objekte in ORA2 (z. B. TABLE1 unten):

  SELECT COUNT(*) FROM TABLE1@ORA2;

Pre-Requistes:

  • Beide Datenbanken müssen in Betrieb sein (geöffnet).
  • Beide Datenbank-Listener müssen aktiv sein.
  • TNS muss korrekt konfiguriert sein.
  • Benutzer user1 muss in der ORA2-Datenbank vorhanden sein, das Passwort muss überprüft und überprüft werden.
  • Benutzer user1 muss mindestens über das SELECT Privileg verfügen oder über ein anderes Zugriffsrecht auf die Objekte in ORA2 verfügen.


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow