Zoeken…


Een databasekoppeling maken

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

De externe DB is dan op de volgende manier toegankelijk:

SELECT * FROM MY_TABLE@dblink_name;

Gebruik de volgende query om een databasekoppeling te testen zonder dat u een van de objectnamen in de gekoppelde database hoeft te kennen:

SELECT * FROM DUAL@dblink_name;

Als u een domein voor de gekoppelde databaseservice expliciet wilt opgeven, wordt de domeinnaam toegevoegd aan de instructie USING . Bijvoorbeeld:

USING 'tns_service_name.WORLD'

Als er geen expliciete domeinnaam is opgegeven, gebruikt Oracle het domein van de database waarin de koppeling wordt gemaakt.

Oracle-documentatie voor het maken van databasekoppelingen:

Maak een databasekoppeling

Laten we aannemen dat we twee databases "ORA1" en "ORA2" hebben. We hebben toegang tot de objecten van "ORA2" vanuit de database "ORA1" met behulp van een databasekoppeling.

Vereisten: voor het maken van een koppeling voor een CREATE DATABASE LINK hebt u de machtiging CREATE DATABASE LINK nodig. Voor het maken van een privé-databasekoppeling hebt u de machtiging CREATE PUBLIC DATABASE LINK .

* Oracle Net moet aanwezig zijn op beide instanties.

Een databasekoppeling maken:

Van ORA1:

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

Databasekoppeling gemaakt.

Nu we de DB-link hebben ingesteld, kunnen we dat bewijzen door het volgende uit te voeren vanaf ORA1:

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

U kunt ook toegang krijgen tot de DB-objecten van "ORA2" vanuit "ORA1", op voorwaarde dat de gebruiker user1 de SELECT machtiging heeft voor die objecten op ORA2 (zoals TABLE1 hieronder):

  SELECT COUNT(*) FROM TABLE1@ORA2;

Pre-requistes:

  • Beide databases moeten actief zijn (geopend).
  • Beide database-luisteraars moeten actief zijn.
  • TNS moet correct zijn geconfigureerd.
  • Gebruiker user1 moet aanwezig zijn in de ORA2-database, het wachtwoord moet worden gecontroleerd en geverifieerd.
  • Gebruiker user1 moet ten minste het SELECT privilege hebben of een andere vereiste om toegang te krijgen tot de objecten op ORA2.


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow