cx_Oracle数据库错误:ORA-12170:

时间:2019-11-22 15:12:17

标签: python-3.x oracle cx-oracle

我正在尝试使用以下代码从python (3.7)到远程oracle数据库建立连接:

import cx_Oracle # Version 7.2.2
import sshtunnel
import socket

HOST = "HOST"
USRNAME = "Me"
hostname = socket.gethostname()  
IPAddr = socket.gethostbyname(hostname)


with sshtunnel.SSHTunnelForwarder(
                         (HOST, 22), 
                         ssh_username = USRNAME,
                         ssh_pkey='~/.ssh/dumpserver',
                         remote_bind_address=(IPAddr, 22)
                         ) as server: 

        conn = cx_Oracle.connect('testuser','password', 'oracle/db', encoding="UTF-8")
        print(conn.version)

我收到以下错误:

  

DatabaseError:ORA-12170:TNS:发生连接超时。

我尝试在

上进行阅读

但是并没有变得更聪明,我也无法使它工作:(任何想法指针等都非常受欢迎。另外,如果有人对如何将oracle查询发送到远程有其他代码段-使用f.eks paramiko很好。

谢谢,F

1 个答案:

答案 0 :(得分:0)

我找到了一个Oracle SSH隧道代码,该代码与SSH Tunnel To Server中的代码非常相似

关于IP问题,您的错误代码表明您可能没有正确的Oracle Service IP,请检查此条目lsnrctl status