如何使用OracleDB将Python连接到Oracle

g9icjywg  于 7个月前  发布在  Oracle
关注(0)|答案(1)|浏览(100)

我正在尝试使用以下Python脚本连接到Oracle:

import oracledb  
connection = oracledb.connect(user = 'user', 
                                  password = 'PW', 
                                  service_name = 'xxx')

字符串
但是,我得到了以下错误:

  • 操作错误:DPY-6005:无法连接到数据库(CONNECTION_ID= KKNOzerEHqa 1cFi 8 jN 5 yWw ==). [WinError 10061]无法建立连接,因为目标计算机主动拒绝连接 *

如果我不得不猜测我输入了错误的service_name。我知道TNS服务名称和数据库服务名称是什么,但我不确定这些是否是我需要输入的。如果这些是正确的,我不清楚我到底会在这里输入什么,例如service_name = 'local/service name'或只是输入服务名称,不包括“本地/”*。
最后,我通常使用JDBC自定义URL连接到我的工作数据库,例如“jdbc:oracle:thin:@ldap://ldaptns."。有人知道是否可以在oracledb.connect()中使用它吗?
谢谢

q3qa4bjr

q3qa4bjr1#

您需要指定主机,正如John Gordon所指出的。像这样:

import oracledb

connection = oracledb.connect(
    user="user",
    password="PW",
    host="server_host",
    port=1521,       # this is optional
    service_name="xxx"
)

# or you can use this (Easy Connect string)

connection = oracledb.connect(
    user="user",
    password="PW",
    dsn="server_host:server_port/xxx"
)

字符串

相关问题