PLSQL Developer 不能連接 Oracle 11g 64位 的解決辦法

前言:

    PLSQL Developer 無法連接 Oracle server64bit 分爲兩種情況:

    第一種情況是:在 Oracle server 64bit 的數據庫服務器上安裝 PLSQL ;

    第二種情況是:在另外的機器上安裝 PLSQL Developer 連接 Oracle server 64bit數據庫服務器。

錯誤症狀:

    Initialization error     
    SQL*Net not properly installed
    OracleHomeKey:       
    OracleHomeDir:

原因:

    Oracle client是64位的,而plsql是32位的,兩者不兼容。

第一種情況解決辦法1:

    下載跟Oracle服務器同版本的instantclient,然後配置 PLSQL,在 Perference --> Connection 裏面設置 Oracle_Home 和 OCI Library,例如本機設置爲:

    Oracle Home : D:\app\oracle\product\11.2.0\instantclient_11_2
    OCI Library :    D:\app\oracle\product\11.2.0\instantclient_11_2\oci.dll

    

    像其他 Navicat 連接 Oracle server 64bit 也需要現在這個instantclient,然後指定oci.dll。可以參考博客:Navicat Premium 連接 Oracle 數據庫

    PS:

    如果使用上面的這種方法的話,那麼PLSQL讀取的配置文件也是instantclient_11_2目錄下的配置文件,比如我的配置文件路徑就是

    D:\app\oracle\product\11.2.0\instantclient_11_2\NETWORK\ADMIN 我們就要將

    D:\app\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN 當中的三個配置文件(listener.ora、sqlnet.ora、tnsnames.ora)覆蓋到

    D:\app\oracle\product\11.2.0\instantclient_11_2\NETWORK\ADMIN 當中。

第一種情況解決辦法2:

    在安裝 oracle server 64bit 以後,再安裝oracle_client_32bit,然後在配置上有一下注意點:

    1、oracle server 64bit 配置監聽器 listener 和數據庫連接名 testdb;

    2、oracle_client_32bit 不要配置監聽器,只配置數據庫連接名 testdb;

    3、然後安裝 plsql,連接testdb,正常連接。

第二種情況解決辦法:

    安裝 oracle_client_32bit,創建數據庫連接,安裝 PLSQL Developer,這樣就能夠正常連接。

    TNS_ADMIN 的設定:

    這個環境變量是用來設定到底使用那個tns配置文件的。因爲我們在一臺機器上面安裝 oracle server 64bit 和 oracle client 32bit,那麼就會有兩個 tns 的配置文件,兩個配置文件放在一下目錄:

    1、D:\app\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN

    2、D:\app\oracle\product\11.2.0\client_1\NETWORK\ADMIN

    如果不設定 TNS_ADMIN,那麼默認使用 client_1 的 tns

    

    如果設定環境 TNS_ADMIN=D:\app\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN,那麼上面的路徑會發生改變。

發佈了34 篇原創文章 · 獲贊 11 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章