Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案

今天在windows64位的win7的电脑上安装了Oralce11g后,通过PLSQL Developer连接Oracle数据库时,提示如下图所示错误信息

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第1张图片

原因分析:因为Oracle是64位系统,PLSQL Developer是32位系统(也可能是Oracle是32位系统,PLSQL Developer是64位系统),所以Oracle已经配置成功,测试连接成功,但是在我登录PLSQL Developer的时候,报连接不过去。

解决方法:

1. 去https://www.oracle.com/database/technologies/instant-client/downloads.html 下载

  • Instant Client for Microsoft Windows (32-bit)

具体下载那个版本看操作系统和上图的错误信息提示的需求,我的是windows32位的

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第2张图片

2. 勾选同意下载协议,不然下载不了;

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第3张图片

3. 选择Version 11.2.0.4.0,下载instantclient-basic-nt-11.2.0.4.0.zip (51,477,933 bytes);

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第4张图片

4. 将 instantclient-basic-nt-11.2.0.4.0.zip 解压至 D:\Oracle11g中oci.dll 所在目录为:D:\Oracle11g\instantclient_11_2

5. 设置环境变量:

TNS_ADMIN=D:\Oracle11g\instantclient_11_2

NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

6. 点击PLSQL Developer,然后点击取消,进入未登录页面,选择菜单 --> Tools --> Perferences --> Connection修改Oracle_Home和OCI Library的配置:

OracleHome: D:\Oracle11g\instantclient_11_2

OCI library: D:\Oracle11g\instantclient_11_2\oci.dll

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第5张图片

7. 重启Plsql Developer,输入相应的信息既可以连接数据库成功。

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第6张图片

连接时可能遇到的问题:

1. 如果连接后出现如下图所示提示,ORA-12154: TNS:could not resolve the connect identifier specified,即无法解析指定的连接

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第7张图片

解决方法:

(1)点击PLSQL Developer,然后点击取消,进入未登录页面,选择菜单 --> Tools --> Perferences --> Connection,检查Oracle_Home和OCI Library的配置是否正确;

(2)如果上述配置核对后没问题,查看tnsnames.ora文件,查看数据库配置信息前面是否有空格;

1)# TNSNAMES.ORA Network Configuration File:D:\Oracle11g\instantclient_11_2\tnsnames.ora(地址是否正确)

2)ORCL = (orcl前面是否有空格,有就去掉)

# TNSNAMES.ORA Network Configuration File:D:\Oracle11g\instantclient_11_2\tnsnames.ora
# Generated by Oracle configuration tools.

xhcip =
	(DESCRIPTION = 
	  (ADDRESS_LIST = 
	    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
	    )
	    (CONNECT_DATA =
	       (SID = orcl)
	    )   
	 )

(3)如果还没有解决问题,查看环境变量的设置是否正确,在环境变量path中添加Oracle客户端的安装路径。

2. 当然连接时也可能遇到如下图所示的错误:

Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案_第8张图片

解决方法:

(1)检查输入的用户名、密码以及数据库是否对应且正确;

(2)检查安装的instantclient(我的是D:\Oracle11g\instantclient_11_2)的tnsnames.ora(没有的话自己创建一个)设置的数据库端口是否正确;

# TNSNAMES.ORA Network Configuration File:D:\Oracle11g\instantclient_11_2\tnsnames.ora
# Generated by Oracle configuration tools.

xhcip =
	(DESCRIPTION = 
	  (ADDRESS_LIST = 
	    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
	    )
	    (CONNECT_DATA =
	       (SID = orcl)
	    )   
	 )

 

转载于:https://my.oschina.net/u/3986411/blog/3055974

你可能感兴趣的:(Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案)