Я пытаюсь создать ссылку db, дав эту команду

CREATE DATABASE LINK dblink 
    CONNECT TO qqitsmrep_read IDENTIFIED BY etl#t0pread
    USING '(DESCRIPTION=
                (ADDRESS=(PROTOCOL=TCP)(HOST=pldbitsr0031vm.bmwgroup.net)(PORT=1708))
                (CONNECT_DATA=(SERVICE_NAME=ITSM Reporting))
            )';

Но не уверен, что имя службы правильное или нет, а также, когда я проверяю ссылку db, я получаю следующую ошибку screenshot2

Соединение выглядит следующим образомsceen shot

0
Rakesh119 20 Апр 2020 в 13:58
Это не связано с вашей проблемой, но могу ли я предложить вам удалить пароль, установленный в скрипте dblink, чтобы весь мир, читающий ваш пост, не узнал об этом :)
 – 
Olivier Depriester
20 Апр 2020 в 14:03
Неее... Сервера BMW уже взломаны. Слишком поздно, @Olivier.
 – 
Littlefoot
20 Апр 2020 в 14:06
Почему вы жестко кодируете свою строку подключения (предложение USING), а не просто ссылаетесь на свой tnsnames.ora? И почему вы ссылаетесь на порт 1708, когда ваш пример SQL Dev ссылается на порт 1595? И любой из этих портов указывает, что ожидается, что слушатель будет перечислять не порт по умолчанию (по умолчанию 1521). Нет ничего, если запустить прослушиватель на порту, отличном от порта по умолчанию.
 – 
EdStevens
20 Апр 2020 в 14:24

1 ответ

Соединение SQL Developer говорит, что

  • Хост pldbdco0024vm.bmwgroup.net, но вы использовали pldbitsr0031vm.bmwgroup.net
  • DCODB — это SID, а вы использовали неверное имя службы.
  • Порт 1595, а вы использовали 1708.

По сути, вы должны проверить, что говорит TNSNAMES.ORA (или спросить своего администратора баз данных).

Пытаться

CREATE DATABASE LINK dblink 
CONNECT TO qqitsmrep_read IDENTIFIED BY etl#t0pread
USING '(DESCRIPTION=
         (ADDRESS=(PROTOCOL=TCP)(HOST=pldbdco0024vm.bmwgroup.net)(PORT=1595))
         (CONNECT_DATA=(SID=dcodb))
        )';
0
Littlefoot 20 Апр 2020 в 14:05
Спасибо. Извините, я вставил неправильные данные о подключении, но я понял, где я ошибался.
 – 
Rakesh119
20 Апр 2020 в 14:31