PLSQL无法连Oracle 11g接数据库--问题解决


问题说明:

本人在PC机上安装了Oracle 11g R2版本的数据库服务,通过PL/SQL连接数据库时总是无法连接,下面具体说明下安装环境。

PC操作系统: Window7 (64bit)

Oracle服务器版本:Oracle 11g R2 ((安装目录:D:\oracle\)(64bit)

PL/SQL版本:PL SQL 10.0

在配置好oracle的tnsnames.ora文件(D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\),内容如下:

# tnsnames.ora Network Configuration File: D:\oracle\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

DAVID =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = david)
    )
  )

并在Tools-->Preferences窗口中配置Oracle Home和Oracle library,如下图所示:

在PL/SQL的登陆界面却无法检测到oracle服务名DAVID,如下图:

在“Enter”键后,会弹出如下错误提示框,如下图:

问题分析

因为PLSQL没有64位版,通过32bit的PLSQL连接64位的Oracle时就会报错,需要一个32位的oracle客户端工具instantclient进行转换。

问题解决

1、下载oracle客户端

下载instantclient-basic-win32-10.2.0.5.zip ,下载地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html

2、安装instantclient

解压安装包instantclient-basic-win32-10.2.0.5.zip,解压目录:D:\Program Files\destination files\oracleclient

然后建立一个目录D:\Program Files\destination files\oracleclient\NETWORK\ADMIN

3、复制tnsnames.ora

将D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的tnsnames.ora文件复制到D:\Program Files\destination files\oracleclient\NETWORK\ADMIN下

4、配置PLSQL

打开 Tools-->Preferences窗口中配置Oracle Home和Oracle library,如下图:

Oracle Home:D:\Program Files\destination files\oracleclient

Oracle library:D:\Program Files\destination files\oracleclient\oci.dll

5、重启PLSQL

重启PLSQL,在Oracle登陆界面上将出现DAVID数据库的服务名,如下图:

Oracle 10g 安装后重启系统,用PLSQL连接报没有监听

ORA-03114 PLSQL过程编译断开连接错误

PLSQL 连接 Oracle简单配置

PLSQL批量Forall操作性能提升详解

使用Oracle SQLDeveloper连接数据库并创建用户

Oracle自带的PL/SQL Developer导入导出数据

在64位Win7系统下安装Oracle 11g和Oracle SQL Developer客户端

相关内容