Поиск…


Создание ссылки на базу данных

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

Затем удаленная БД будет доступна следующим образом:

SELECT * FROM MY_TABLE@dblink_name;

Чтобы протестировать соединение с базой данных без необходимости знать какое-либо из имен объектов в связанной базе данных, используйте следующий запрос:

SELECT * FROM DUAL@dblink_name;

Чтобы явно указать домен для службы связанных баз данных, доменное имя добавляется в оператор USING . Например:

USING 'tns_service_name.WORLD'

Если имя домена не указано явно, Oracle использует домен базы данных, в которой создается ссылка.

Документация Oracle для создания ссылок на базы данных:

Создать ссылку на базу данных

Предположим, что у нас есть две базы данных «ORA1» и «ORA2». Мы можем получить доступ к объектам «ORA2» из базы данных «ORA1», используя ссылку базы данных.

Предварительные требования: для создания частной ссылки базы данных вам нужна привилегия CREATE DATABASE LINK . Для создания частной ссылки базы данных вам нужна привилегия CREATE PUBLIC DATABASE LINK .

* Oracle Net должен присутствовать на обоих экземплярах.

Как создать ссылку на базу данных:

Из ORA1:

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

Создана ссылка на базу данных.

Теперь, когда мы установили связь с БД, мы можем доказать, что, выполнив следующее из ORA1:

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

Вы также можете получить доступ к объектам БД «ORA2» из «ORA1», учитывая, что пользователь user1 имеет привилегию SELECT для этих объектов на ORA2 (например, ТАБЛИЦА 1 ниже):

  SELECT COUNT(*) FROM TABLE1@ORA2;

Предварительно requistes:

  • Обе базы данных должны быть запущены и открыты (открыты).
  • Оба слушателя базы данных должны быть запущены и запущены.
  • TNS должен быть настроен правильно.
  • Пользователь user1 должен присутствовать в базе данных ORA2, пароль должен быть проверен и проверен.
  • Пользователь user1 должен иметь хотя бы привилегию SELECT или любую другую, необходимую для доступа к объектам на ORA2.


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow