Я пытаюсь подключиться к базе данных Oracle через код (Ruby/DBI, но это не имеет значения), используя строку соединения EasyConnect. Во всей документации Oracle указывается строка подключения как // hostname: port/service_name. У меня нет имени_сервера для базы данных, к которой мне нужно подключиться, вместо этого у меня есть SID. Есть ли способ создать строку соединения EasyConnect с использованием SID вместо имени службы?Строка соединения Oracle EasyConnect с использованием SID?
Мой код подключения выглядит следующим образом:
DBI.connect("DBI:OCI8://localhost:9000/the_sid", "username here", "password here")
Я продолжаю пробовать разные вещи, и в зависимости от того, что я стараюсь, я получаю один из двух сообщений об ошибке:
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor (DBI::DatabaseError)
ORA-12154: TNS:could not resolve the connect identifier specified (DBI::DatabaseError)
Вам действительно нужно имя хоста и номер порта? Сообщение об ошибке, похоже, указывает на то, что у вас запущен прослушиватель TNS. Если имена TNS правильно настроены, ваша строка соединения может быть «DBI: OCI8: the_sid». – Codo
У меня нет настроенных имен TNS. –