【问题标题】:Whats wrong with instant client? | cx_Oracle.Database: ORA-12514即时客户端有什么问题? | cx_Oracle.Database: ORA-12514
【发布时间】:2019-02-02 23:56:33
【问题描述】:

cx_Oracle 包的帮助下,我正在尝试连接到远程Oracle 数据库。不幸的是,我在尝试测试下一个 python 代码时出错:

import cx_Oracle;
dsn_tns=cx_Oracle.makedsn('HOST', 'PORT', service_name='NAME')
connection=cx_Oracle.connect('USERNAME', 'PASSWORD', dsn_tns)

错误

cx_Oracle.Database: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

依赖关系

1) Ubuntu 14.04(64 位)(本地计算机)

2) Python 2.7.14(64 位)

3) cx_Oracle 6.4.1

4) 即时客户端 18.3

5) Oracle 11g 数据库(位于远程服务器中)

我使用official 文档来安装和配置即时客户端。

官方文档说:

Oracle Call Interface 18.3 可以连接到 Oracle Database 11.2 或 稍后。

这就是为什么我加载即时客户端 18.3 的基本包,然后解压缩它:

cd /opt/oracle          
unzip instantclient-basic-linux.x64-18.3.0.0.0dbru.zip

然后我安装libaio:

sudo apt-get install libaio1

在终端中我写了下两个命令:

sudo sh -c "echo /opt/oracle/instantclient_18_3 > /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig

/opt/oracle/instantclient_18_3/network/admin 里面我放了tnsnames.ora 文件。

之后我在~/.profile中设置了环境变量:

export LD_LIBRARY_PATH=/opt/oracle/instantclient_18_3:$LD_LIBRARY_PATH
export TNS_ADMIN=/opt/oracle/instantclient_18_3/network/admin
export PATH=/opt/oracle/instantclient_18_3:$PATH

我还应该做些什么来解决这个问题?

【问题讨论】:

    标签: linux database oracle ubuntu-14.04 cx-oracle


    【解决方案1】:

    即时客户端有什么问题?从您提供的信息中绝对没有。您正在连接到服务器(侦听器),但服务器未配置您指定的数据库。 您可以通过不同的客户端/不同的客户端主机确认这一点。

    去检查服务器上的配置。

    【讨论】:

    • 你好,我很困惑。 tnsnames.ora 文件中的设置是正确的。我的计算机中缺少哪些特定设置(配置)?
    • 没什么 - 问题出在服务器上
    猜你喜欢
    • 1970-01-01
    • 2018-04-18
    • 2012-08-23
    • 2022-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-26
    • 2015-11-23
    相关资源
    最近更新 更多