以前有没有人遇到过这个错误?我试着引用这个链接:http://www.ardentperf.com/2007/04/02/local_listener-and-ora-12545/
但这并不能真正解决我们的问题。我们的场景是我们能够连接到数据库,但是当我们试图从视图中选择数据时,我们会遇到这个错误。
我已经启用了客户端sqlnet跟踪,但我无法解释问题的确切原因。
有没有人有主意?
谢谢
发布于 2016-09-28 10:40:51
对我来说,问题是在TNSNAMES.ora中没有通过名称检测到主机,而是使用IP地址解决了它(我认为这是由于域控制器问题):
XYZD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 123.45.67.89)(PORT = 1521))
(CONNECT_DATA = (SERVICE_NAME = XYZD))
)执行命令:“ping HOST”查找服务器的IP地址。
编辑:
再次遇到这种情况,这一次是防火墙通过端口阻止TCP。
发布于 2012-05-31 00:39:27
这个问题可以是多方面的:
%1.您的TNSNAMES.ora不是最新的
Fix:查找Oracle主目录查找目录: /network/ADMIN/
如果您在本地计算机上遇到此问题,则TNSNAMES.ora应该在其中
2.创建TNS_ADMIN环境变量
在我的例子中:
变量名: TNS_ADMIN
取值: C:\Programs\Ora10g\network\ADMIN
出于测试目的,尝试使用sqlplus连接到Oracle DB (您可能已经尝试过了)。
发布于 2019-03-13 19:56:40
我也有这个问题,因为我没有使用tnsnames.ora文件,当我踩到这个link时,我几乎放弃了希望。
所以,现在我的代码看起来像这样:
import cx_Oracle
connection_string = '''username/password@(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=<host_name>)
(PORT=<port_numer>)
)
)
(CONNECT_DATA=
(SID=<your_SID>)
)
)'''
db = cx_Oracle.connect(connection_String)现在,您可以创建游标并编写查询。
注意:这不是推荐的做法,但我仅将其用于测试。
https://stackoverflow.com/questions/4800958
复制相似问题