无法连接到Oracle本地数据库cx_Oracle。数据库错误:ORA12541:TNS:无侦听器

2024-05-08 01:27:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用Python3.6.8 64位连接到Oracle本地数据库,但不太清楚如何实现它。Oracle库已安装,操作系统为Windows 10 PRO 64位,而且绝对所有尝试过的示例都不起作用

我尝试的最后一个例子是:

userName = 'user'
password = 'pass'
with cx_Oracle.connect(userName, password, "localhost/orclpdb1",
        encoding="UTF-8") as connection:
    cursor = connection.cursor()
    cursor.execute("insert into SomeTable values (:1, :2)",
        (1, "Some string"))
    connection.commit()

引发错误:cx_Oracle.DatabaseError:ORA-12541:TNS:无侦听器

如何解决这个问题

PS:即使是Oracle网站上没有TNSNAMES.ORA连接到DB的官方示例(“连接字符串的轻松连接语法”)也不起作用


Tags: 数据库示例windowswithusernamepasspasswordconnection
1条回答
网友
1楼 · 发布于 2024-05-08 01:27:52

您的Oracle侦听器正在运行吗

cmd -> services.msc -> Oracle Listener (restart)

Oracle侦听器是否在端口1521上侦听(默认)

netstat -ab | findstr "LISTEN"

数据库服务“orclpdb1”是否公开(在列表中)

cmd -> lsnrctl status

在继续使用python之前,请确保可以使用sqlplus进行连接

# when this works, you can continue with python
sqlplus user/pass@localhost/orclpdb1

祝你好运

相关问题 更多 >