windows7 下安装64位oracle11g用PL/SQL Developer连接报错问题

时间:2022-11-24 23:02:42

由于在本机Win7X64上安装了64位的Oracle,结果试图使用PLSQL Developer去访问它的时候,报告说无法加载oci.dll文件。在网上搜索了半天,原来主要原因是oci.dll是64位的,而PL/SQL developer只有32位的,在使用64位oci.dll文件时出错.。
错误如图所示:
windows7 下安装64位oracle11g用PL/SQL Developer连接报错问题
1)安装Oracle 11g 64位

2)安装32位的Oracle客户端( instantclient-basic-nt-11.2.0.2.0)

下载instantclient-basic-nt-11.2.0.2.0.zip (一定得是32位的,不要下错了版本,Oracle官网有下载),将其解压至Oracle安装目录的Product下(里面默认的文件夹名为:instantclient_11_2):D:\app\Administrator\product\instantclient_11_2。

拷贝数据库安装根目录下的一个目录D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK到Oracle客户端目录下D:\app\Administrator\product\instantclient_11_2(其实只需要 NETWORK\ADMIN\tnsnames.ora)

3)安装PL/SQL Developer

安装 PL/SQL Developer,在perference->Connection里面设置OCI Library和Oracle_Home,例如本机设置为:

Oracle Home :D:\app\Administrator\product\instantclient_11_2

OCI Library :D:\app\Administrator\product\instantclient_11_2\oci.dll

接下来这步可选。

4) 设置环境变量(修改PATH和TNS_ADMIN环境变量)

对于NLS_LANG环境变量, 最好设置成和数据库端一致, 首先从数据库端查询字符集信息:
SQL> select userenv(‘language’) nls_lang from dual;
NLS_LANG


SIMPLIFIED CHINESE_CHINA.ZHS16GBK

右击”我的电脑” - “属性” - “高级” - “环境变量” - “系统环境变量”:
1>.选择”Path” - 点击”编辑”, 把 “D:\app\Administrator\product\instantclient_11_2;” 加入;
2>.点击”新建”, 变量名设置为”TNS_ADMIN”, 变量值设置为”D:\app\Administrator\product\instantclient_11_2;”, 点击”确定”;
3>.点击”新建”, 变量名设置为”NLS_LANG”, 变量值设置为”SIMPLIFIED CHINESE_CHINA.ZHS16GBK”, 点击”确定”;
最后点击”确定”退出.

启动 PL/SQL Developer ,运行无问题。

windows7 下安装64位oracle11g用PL/SQL Developer连接报错问题

windows7 下安装64位oracle11g用PL/SQL Developer连接报错问题
最后要设置启动PL/SQL developer的环境,在PL/SQL developer的安装目录下建立一个bat文件,文件内容如下:
最后一步可以写成如下脚本:
conf.bat:


@echo off
set path=D:\app\Administrator\product\instantclient_11_2
set ORACLE_HOME=D:\app\Administrator\product\instantclient_11_2
set TNS_ADMIN=D:\app\Administrator\product\instantclient_11_2
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

start plsqldev.exe

其中NLS_LANG前部分必须是AMERICAN_AMERICA,后部分是数据库采用的字符集.
windows7 下安装64位oracle11g用PL/SQL Developer连接报错问题

文章参考:
http://blog.csdn.net/yeohcooller/article/details/6940481