PLSQL 无法连接 Oralce 提示 Could not initialize oci.dll 的解决办法

环境:

操作系统:WINDOWS7 64位

数据库版本:12.1.0

PLSQL版本:随意

ORACLE_HOME:D:\oracle\product\12.1.0\dbhome_1 ,根据实际安装情况调整就行;

 

问题:PLSQL无法连接数据库,PLSQL登录界面中数据库无法自动带出来,手动输入用户名、密码、数据库后,系统会提示:

Initialization error 
Could not initialize
"xxxxxx\oci.dll"


OCIDLL forced to 
"xxxxxx\oci.dll"

returned 0 
 

原因:32位的PLSQL,无法使用64位系统的OCI.DLL动态连接库

解决办法

1、去官网下载对应版本的Oracle Instant Client;12.1的是:instantclient-basic-nt-12.1.0.2.0.zip;不要下载错了,比如下载成“instantclient-basic-windows.x64-12.1.0.2.0.zip”就不行;

2、将instantclient-basic-nt-12.1.0.2.0.zip解压到目录:D:\oracle\instantclient_12_1 (此目录可以改的);

3、在D:\oracle\instantclient_12_1目录下创建文件夹NETWORK;

4、管理员进入CMD;

5、输入:mklink /d D:\oracle\instantclient_12_1/NEWWORK/ADMIN D:\oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN这样做的好处是以后不用维护两套tnsnames.ora,按Oracle原生态方式添加服务命名就行;

6、进入PL/SQL,首次进入点击“CANCEL”,在主界面依次进入:Tools -> Perferences ;

7、设置Oracle_Home(empty is autodetect):D:\oracle\instantclient_12_1  ;

8、设置OCI library(empty is autodetect):D:\oracle\instantclient_12_1\oci.dll;

9、点击OK,保存设置;

10、重启PL/SQL,搞定!

你可能感兴趣的:(PLSQL 无法连接 Oralce 提示 Could not initialize oci.dll 的解决办法)