cx_Oracle.DatabaseError: ORA-12170: TNS: истекло время ожидания соединения

Я получаю

cx_Oracle.DatabaseError: ORA-12170: TNS:Connect timeout occurred error while connecting oracle from python.

Я установил Python 3.7.0 и InstantClient_11_2.

Ниже процесс, который я делаю,

import cx_Oracle
dsn_tns = cx_Oracle.makedsn( '<ip>', 1521, service_name = '<given service name>')

connection = cx_Oracle.connect('user', 'pwd', dsn_tns) 

Я установил систему проверяемой PATH где oci.dll настоящее.

Что может быть не так?

2 ответа

Вы также можете использовать следующую строку подключения, если база данных находится на том же компьютере:

connection = cx_Oracle.connect('user/pwd@localhost/service_name')

Обратите внимание, что значение service_name является обязательным. Вы не можете использовать пустую строку!

Пытаться:

connection = cx_Oracle.connect('user', 'pwd', cx_Oracle.makedsn( '<ip>', '1521',None,'<given service name>')) 

Выглядит так же, но работает по-другому на моем сервере Ubuntu.

Также убедитесь, что порт расположен между ' '

Другие вопросы по тегам