tnsnames.ora太难以配置了

时间:2019-03-01 13:56:19

标签: oracle plsqldeveloper tnsnames

我有一个tnsnames.ora和PL / SQL Developer。我想让PL / SQL Developer建立基于tnsnames.ora的连接。我读到的是,预计可以在$ ORACLE_HOME /(...)中找到tnsnames.ora,但是我没有安装任何Oracle产品,并且根本没有设置此系统变量。我以为,如果我在包含tnsnames.ora文件的某个虚拟位置上设置此变量,我会成功,但是在连接时得到:

Initialization error
Could not locate OCI dll
OracleHomeKey:
OracleHOmeDir:'my dummy path'

我知道什么是OCI。我曾经使用基于oci的模块将php与我的Oracle数据库连接。我不知道当我没有手动设置$ ORACLE_HOME时,PL / SQL Dveloper从何处获取此OCI。我检查了OID dll是否包含在Program Files的安装目录中(我使用的是Windows),但它不存在。为什么每个使用tnsnames.ora进行连接的教程都假定用户已安装Instant_client? PL / SQL Developer是否在后台为我安装了它?

2 个答案:

答案 0 :(得分:2)

是的;您可以将TNSNAMES.ORA放在磁盘上的任何位置。然后设置TNS_ADMIN环境变量,该变量将指向该目录,例如

M:\>set tns_admin
TNS_ADMIN=C:\0_Oracle_library

M:\>

这样做,Oracle产品将在该位置寻找它。即使有多个TNSNAMES.ORA文件(因为每个Oracle软件产品都创建自己的副本),也只会使用该文件。

答案 1 :(得分:2)

错误消息非常具体:

  

找不到OCI.dll

不同于Java软件(例如 SQL Developer ), PL / SQL Developer 取决于Oracle数据库客户端软件,其核心是 OCI.dll 库。

TNSNAMES.ORA不是问题。而是您的PC上缺少该软件。因此,您必须为Microsoft Windows安装最新版本的 Oracle数据库客户端... 。查看 PL / SQL Developer 文档,以了解所需的发行版以及您是否需要32位或64位版本。

相关问题