一、问题描述
由于 PLSQL Developer 没有64位版本,所以在64位操作系统上要运行该程序时,Oracle时就会报错,以下是解决办法。
二、处理方法
1.首先到Oracle官网上下载一个32位的客户端(instantclient),要下载 basic 版本的,不要下载 basiclite 版本的。
(1)进入下载界面选择 Istant Client
(2)进入Instant Client 下载,选择32位
(3)选择basic版本下载
2.把下载到的客户端程序,解压缩到了Oracle 的安装目录(D:/oracle/product/instantclient_11_2),然后将$ORACLE_HOME/network/admin/tnsnames.ora复制到该目录中。
3.设置环境变量
增加新变量:
变量名:TNS_ADMIN
变量值:D:/oracle/product/instantclient_11_2
4.在PLSQL Developer 程序目录中创建start.bat文件,以下是start.bat的内容:
@echo off set path=D:/oracle/product/instantclient_11_2 set ORACLE_HOME=D:/oracle/product/instantclient_11_2 set TNS_ADMIN=D:/oracle/product/instantclient_11_2 set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK start plsqldev.exe |
其中 set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 的 ZHS16GBK 是你的数据库编码,常用字符集有AMERICAN_AMERICA.AL32UTF8
5.启动 PLSQL Developer,不要登录,点击Cancel,直接进入
6.配置PLSQL Developer
点击工具→首选项→连接,把“Oracle 主目录名”设置为空,并把 “OCI 库” 设置为instantclient 目录中的 oci.dll 的路径,路径是D:/oracle/product/instantclient_11_2/oci.dll
7.将start.bat创建快捷方式到桌面,最好将图标变更为plsql developer的图标
8.运行start.bat进入PLSQL Developer登录界面,此时应该正常读取到TNSNAMES.ORA列表为正确
9.验证 可以通过查询信息看出TNS FILE的文件路径
三、总结
看似容易的问题,在群里已经有好几位朋友遇见过了,现在我整理一下,供大家参考。这是一种绕过问题的处理方法,当然也可以不使用PLSQL Developer,建议使用ORACLE官方的SQL Developer,也是很好的,我个人推荐。