我在window2003上装了oracle11g的服务端,之后又装了客户端。
之后运行客户端的sql plus,是没有tns配置的,
现在我在本机用命令tnsping XXXX 是通的,远程也能正常访问数据库,
但是其他的程序,比如PLSQL Developer和IIS就不能找到TNS列表了。我该怎么修改,使在本机的所有程序都能访问到本地的oracle数据库呢?
之后运行客户端的sql plus,是没有tns配置的,
现在我在本机用命令tnsping XXXX 是通的,远程也能正常访问数据库,
但是其他的程序,比如PLSQL Developer和IIS就不能找到TNS列表了。我该怎么修改,使在本机的所有程序都能访问到本地的oracle数据库呢?
现象就是,用PL/SQL Developer登陆,数据库的选择下拉框是空的,手填进去之后,登陆报错。
---------------------------
PL/SQL Developer
---------------------------
Initialization error
Could not load "F:\app\Administrator\product\11.2.0\dbhome_1\bin\oci.dll"OCIDLL forced to F:\app\Administrator\product\11.2.0\dbhome_1\bin\oci.dll
LoadLibrary(F:\app\Administrator\product\11.2.0\dbhome_1\bin\oci.dll) returned 0
---------------------------
OK
---------------------------
PL/SQL Developer的两个配置,在“tools\prefernces\connection”
oracle Home 填的是 F:\app\Administrator\product\11.2.0\dbhome_1
OCI library 填的是 F:\app\Administrator\product\11.2.0\dbhome_1\bin\oci.dll
但是怎么配置呢。
就PL/SQL
C:\Programs\Oracle\product\10.2.0\client_1\bin\oci.dll
如果PL/SQL 是32位的,这里指定的客户端参数也应该是32位的
首先 确定在这个目录中有没有这么一个文件。
其次,就是楼上说的版本位数问题,64位类库对应64位的应用程序。(我记得PLSQL没有64位的),不行的话下个32的oracle instance client。(参考http://blog.csdn.net/limb99/article/details/7381762)
再者,是不是权限问题。试试用管理员权限运行PLSQL
ORACLE_HOME
NLS_LANG
在第一个环境变量下,要存在:
oci.dll
network\admin\tnsnames.ora
第二个是字符编码的,根据数据库的编码自己指定一下。