PLSQL64配置1
需积分: 0 19 浏览量
更新于2022-08-04
收藏 355KB PDF 举报
### PL/SQL Developer 与 64 位 Oracle 数据库的连接配置
#### 背景介绍
在 IT 行业中,Oracle 数据库是非常重要的企业级数据库管理系统之一。随着技术的发展,64 位系统逐渐成为主流,但在实际应用过程中,可能会遇到使用 32 位 PL/SQL Developer 客户端连接 64 位 Oracle 数据库时出现问题的情况。本文将详细介绍如何通过特定配置,使 32 位 PL/SQL Developer 成功连接 64 位 Oracle 数据库。
#### 问题描述
在安装完 Oracle 11.2g 之后,尝试使用 PL/SQL Developer 连接到该数据库时,可能会遇到以下错误提示:
```
Could not load "……\bin\oci.dll"
OCIDLL forced to……
LoadLibrary(……oci.dll) returned 0
```
#### 问题分析
此错误发生的原因在于 PL/SQL Developer 是一个 32 位的应用程序,而 Oracle 11.2g 数据库默认提供的是 64 位的 OCI (Oracle Call Interface) 库文件 `oci.dll`。由于 32 位程序无法直接加载 64 位的 DLL 文件,因此导致了连接失败。
#### 解决方案
为了使 32 位的 PL/SQL Developer 成功连接到 64 位的 Oracle 11.2g 数据库,可以通过以下步骤来实现:
##### 步骤 1: 下载并安装 32 位 Oracle Instant Client
1. **下载 Oracle Instant Client**
访问 Oracle 官方网站下载 32 位的 Oracle Instant Client,确保选择与 Oracle 11.2g 版本相匹配的 Instant Client 版本。
2. **解压并存放**
将下载好的 Instant Client 文件解压到指定路径,例如 `D:\Program Files\instantclient`。
##### 步骤 2: 复制必要的 DLL 文件和配置文件
1. **复制 DLL 文件**
从 Oracle 11.2g 安装路径中复制 `msvcr80.dll` 和 `tnsnames.ora` 文件到 32 位 Oracle Instant Client 的根目录下。
- `msvcr80.dll`: 位于 `D:\Program Files\Crystal\product\11.2.0\dbhome_1\BIN`。
- `tnsnames.ora`: 位于 `D:\Program Files\Crystal\product\11.2.0\dbhome_1\NETWORK\ADMIN`。
2. **设置环境变量**
在系统环境变量中添加或修改以下变量:
- `TNS_ADMIN`: 指向 `D:\Program Files\instantclient` 或其他 Instant Client 的路径。
- `NLS_LANG`: 设置为 `AMERICAN_AMERICA.AL32UTF8` 或根据实际需求进行设置。
##### 步骤 3: 配置 PL/SQL Developer
1. **设置 Oracle_Home 和 OCI Library**
打开 PL/SQL Developer,进入工具菜单下的“首选项”设置,在“Oracle Home”和“OCI Library”选项中分别指定 32 位 Oracle Instant Client 的路径。
2. **创建启动批处理文件**
在 PL/SQL Developer 的安装目录下创建一个名为 `plsqldev.bat` 的批处理文件,内容如下:
```batch
@echo off
set PATH=D:\Program Files\instantclient
set ORACLE_HOME=D:\Program Files\instantclient
set TNS_ADMIN=D:\Program Files\instantclient
set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
start plsqldev.exe
```
使用此批处理文件作为 PL/SQL Developer 的启动方式,以确保正确的环境变量被加载。
#### 结论
通过以上步骤,即使是在 64 位操作系统环境下,也能成功地使用 32 位的 PL/SQL Developer 连接到 64 位的 Oracle 11.2g 数据库。这对于仍然使用 32 位 PL/SQL Developer 的用户来说,是一种非常实用且可行的解决方案。需要注意的是,在实际操作过程中,还需要根据具体的系统环境和软件版本进行相应的调整。