linux - 即时客户端有什么问题? | cx_Oracle.数据库 : ORA-12514

标签 linux database oracle ubuntu-14.04 cx-oracle

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 can connect to Oracle Database 11.2 or later.

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

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

然后我安装libaio:

sudo apt-get install libaio1

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

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 - 即时客户端有什么问题? | cx_Oracle.数据库 : ORA-12514,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52056350/

相关文章:

linux - 如何从 Linux 内核模块确定网络设备速度

linux - 从使用 wget 重定向的页面获取文件

c - x86 中 stat 结构的布局

mysql - 如何将数据从MySQL 5迁移到Sybase ASE 15.5?

oracle - 使用Sqoop从Oracle导入到HBase时修改数据

linux - 有没有一种简单的方法可以在一组具有值的变量中找到最低和最高数字? (Bash 脚本) (Linux)

mysql - 具有 MEMORY 存储引擎的 MySQL 数据库是否会持久保存到磁盘上?

php - 在 laravel 5 中运行包含除法的 mysql 查询

sql - SKIP 锁定和 nowait 的区别

.net - 使用 oracle (.Net Connector) 描述查询