【问题标题】:PL/SQL developer with oracle 32-bit/64-bit client具有 oracle 32 位/64 位客户端的 PL/SQL 开发人员
【发布时间】:2012-12-21 07:06:00
【问题描述】:

我安装了 Oracle 64 位客户端以与我的 weblogic 应用程序一起运行。我了解到 pl-sql 开发人员不适用于 oracle 64 位客户端,所以现在我的机器上安装了 32 位和 64 位客户端,并且我的 ORACLE_HOME 变量指向 64 位客户端。

即使我在 Tools->Preferences of pl-sql developer version 8.0.4 中指定 32 位客户端,我也无法启动 pl/sql developer。

我将我的 oracle 客户端更改为 32 位客户端,然后我能够启动 pl-sql 开发人员,但我的应用程序无法运行。

有没有一种方法可以在将 ORACLE_HOME 指向 64 位 oracle 客户端的同时运行 PL/SQL 开发人员。我不确定在 pl sql developer 的 Tools->Preferences 中明确指定 ORACLE_HOME(对于用户/默认以及系统首选项)是否有任何影响,因为它从我相信的环境变量中选择了 oracle home。

谢谢, 阿迪提亚。

【问题讨论】:

    标签: plsqldeveloper oracleclient


    【解决方案1】:

    您需要将两个客户端安装到不同的 Oracle Home 位置,例如我选择了 C:\OracleHomeC:\OracleHome32

    然后设置一个名为 TNS_ADMIN 的环境变量,并将包含默认 TNSnames.ora 文件的文件夹作为值(对我来说是C:\OracleHome\network\admin

    在 PL/SQL Developer 中保留您的偏好,并确保您还指定了 OCI 库(我的是 C:\OracleHome32\oci.dll

    最后,使用 regedit.exe,在 ORACLE 下添加第二个键 (HKEY_LOCAL_MACHHINE\SOFTWARE\ORACLE)。我已经调用了我的 KEY_OraClient11g_home1 和 KEY_OraClient11g_home2。在第二个键中创建相同的 4 个字符串,并对数据进行适当的更改(例如,在我的示例中,ORACLE_HOME 应该有 C:\OracleHome32 作为它的数据字段)

    现在重新启动所有应用程序应该可以让您无缝使用 PL/SQL Developer,同时还默认为您的 weblogic 应用程序使用 64 位 Oracle 主目录。

    【讨论】:

      【解决方案2】:

      要解决此问题,请下载 32 位版本的 Oracle Instant Client,将其解压缩到诸如 C:\instantclient 之类的目录中。

      接下来,通过单击Tools -> Preferences 配置PL/SQL Developer 以使用此版本。在 Connection -> Oracle Home 下,指向您提取 Instant Client (C:\instantclient) 的位置,在 Connection -> OCI library 下,指向 oci。 dll文件在同一目录(C:\instantclient\oci.dll)。

      重启 PL/SQL Developer 应该可以连接了。

      【讨论】:

        【解决方案3】:

        这是专门针对 64 位的 Oracle 19 即时客户端和 PLSQL Developer 13 的更新答案。

        为了使 PL/SQL Dev 与客户端一起工作,我去了: 配置 -> 首选项 -> Oracle\connection -> 将 oracle home 设置为新的主目录,在我的例子中是 c:\oracle\product\19.x。

        对 OCI 执行相同操作:C:\oracle\product\19.x\instantclient_19_6\oci.dll

        如果您从订单版本迁移,您可能已经在 tns_names.ora 中建立了一个数据库列表。必须将其移至新的客户端目录树。

        在 19.x 根目录下手动创建一个子目录 network\admin。重新启动后,“定义连接”下的数据库列表有我的列表。

        【讨论】:

          【解决方案4】:

          快速发布:我尝试使用 PL/SQL Developer 连接到 64 位 Oracle 数据库。尽管 ORACLE_HOME 设置了正确的值并且 oci.dll 可用,PL/SQL Developer 还是无法连接到数据库。

          进一步探查发现Oracle安装的是64位的,PL/SQL Developer无法加载64位版本的oci.dll文件。要解决此问题,请下载 32 位版本的 Oracle Instant Client,将其解压缩到 \instant_client 等目录。

          接下来,通过单击工具菜单 -> 首选项配置 PL/SQL Developer 以使用此版本。在 Oracle Home 下,指向您提取 Instant 客户端的位置(在本例中为 \instant_client),在 OCI 库的位置下,指向您提取 Instant 客户端的位置中的 oci.dll 文件(\instant_client\oci .dll)。重启 PL/SQL Developer,你现在应该可以连接了。

          打开给定的链接以下载 oci.dll 文件 http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html


          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-10-12
            • 1970-01-01
            相关资源
            最近更新 更多