如何通过 IP 地址连接到远程服务器,就像 TOAD、SqlDeveloper 能够仅使用 IP 地址、用户名、SID 和密码连接到数据库一样?
每当我尝试指定 IP 地址时,它似乎都是在本地获取的。
换句话说,cx_Oracle.connect() 的字符串应该如何格式化为非本地数据库?
之前有一篇文章列出了通过 cx_Oracle 模块连接到 Oracle 的答案,代码如下:
#!/usr/bin/python
import cx_Oracle
connstr='scott/tiger'
conn = cx_Oracle.connect(connstr)
curs = conn.cursor()
curs.execute('select * from emp')
print curs.description
for row in curs:
print row
conn.close()
我喜欢这样做:
ip = '192.168.0.1'
port = 1521
SID = 'YOURSIDHERE'
dsn_tns = cx_Oracle.makedsn(ip, port, SID)
db = cx_Oracle.connect('username', 'password', dsn_tns)
我喜欢这种方法的主要原因之一是我通常在某个地方有一个 TNSNAMES.ORA 文件,我可以检查dsn_tns
对象将通过以下方式做正确的事情:
print dsn_tns
并将输出与我的 TNSNAMES.ORA 进行比较
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)