遇到这个问题的很多,这里经常都有问到PL/SQL连不上服务器的问题,总结下来就是在64位WINDOWS下安装了PL/SQL,无法找到Oracle驱动这种原因最多。
    PL/SQL是32位程序,只能通过32位的Oracle驱动连接Oracle服务器。
    有些人安装32位的Oracle客户端来获取32位的Oracle驱动,这种方法太麻烦,安装时间太长,安装还容易出错,出错后清理垃圾又是个麻烦事。
    推荐Oracle Instant Client这种轻量级的绿色程序代替安装Oracle客户端,可以从官网下载各种版本。
    这里就介绍PL/SQL连接Oracle服务器的方法,大家可以举一反三。
    下载Instant Client Downloads for Microsoft Windows (32-bit)
http://www.oracle.com/technetwork/topics/winsoft-085727.html
    如果只是想作为客户端连上Oracle服务器,那么只需要basic包,这里以11.2.0.1版本作为例子,下载安装包
instantclient-basic-win32-11.2.0.1.0.zip(51,458,190 bytes)

保存到客户端任意路径下,例如D:\software\oracle-instantclient
在64位系统下安装PLSQL连接Oracle服务器的解决方法_PL

    解压instantclient-basic-win32-11.2.0.1.0.zip到当前目录下,默认会生成instantclient_11_2目录,进入instantclient_11_2目录,新建NETWORK目录,进入NETWORK目录,新建ADMIN目录,最后生成的目录结构如下
在64位系统下安装PLSQL连接Oracle服务器的解决方法_Oracle_02


    在ADMIN目录下新建文本文件,取名为tnsnames.ora,用这个文件作为监听服务配置文件,里面的内容书写可以参考官方的资料,也可以参考这个例子
ORAWIN10G =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.3)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orawin)
)
)

配置好这些后,打开PL/SQL,点击Cancel先不用登录,菜单上选择Tools-Preferences
在64位系统下安装PLSQL连接Oracle服务器的解决方法_PL_03


在Options页右下角配置Oracle Instant Client的路径。
Oracle Home输入D:\software\oracle-instantclient\instantclient_11_2
OCI library输入D:\software\oracle-instantclient\instantclient_11_2\oci.dll
在64位系统下安装PLSQL连接Oracle服务器的解决方法_Oracle_04

点击OK,重启PL/SQL即完成了配置,第一次需要在Database一栏手工输入tnsnames.ora文件中配置的监听服务名ORAWIN10G
在64位系统下安装PLSQL连接Oracle服务器的解决方法_SQL_05在64位系统下安装PLSQL连接Oracle服务器的解决方法_Oracle_06