我有一台计算机充当Oracle数据库11g企业版的服务器。我想使用另一台计算机,一台运行Windows XP SP3的PC作为此服务器的客户端。
所以我决定在客户端PC上安装Oracle Instant Client 11.2.0.4.0。我从Oracle OTN下载了压缩文件,并将其解压缩到c:\oracle\instantclient11.2.0.4.0
这样的文件夹中。然后,我将此路径添加到系统路径变量,并为变量名创建了另一个名为TNS_ADMIN
的系统变量,其中Oracle Instant Client的路径为c:\oracle\instantclient11.2.0.4.0
。
最后我从服务器pc中复制了tnsnames.ora。
所以我想尝试从cmd.exe运行sqlplus,但错误是:
The procedure entry point OCIBindByName2 could not be located in the dynamic link library OCI.dll .
有人能帮助我吗?
答案 0 :(得分:1)
您是否也将ORACLE_HOME设置为c:\ oracle \ instantclient11.2.0.4.0?
应该在11.2中修复,尽管如343666.1中所述:
这种对ORACLE_HOME问题的依赖已在Bug:5532439中得到解决 OCI.DLL必须适当地调用SETDLLDIRECTORY。修复就是打电话 SetDllDirectory基于OCI.DLL所在的位置。 解决此问题的方法:
进行即时客户端安装,例如进入,C:\ Oracle \ EZClient102
- 醇>
将ORACLE_HOME环境变量设置为Instant Client的ORACLE_HOME。
设置ORACLE_HOME = C:\ Oracle \ EZClient102
然后应该加载Instant Client DLL C:\甲骨文\ EZClient102 \ BIN