配置PL/SQL Developer連接Oracle數據庫


准備:

  • PL/SQL Developer:我用的是plsqldev1005(32位)
  • win32_11gR2_client:記住一定是32位的,因為PL/SQL Developer只認32位的

          安裝成功后,需要配置環境變量:          

          TNS_ADMIN環境變量,類似於:C:\app\Lzj\product\11.2.0\client_1\network\admin。這個變量實際上是PL/SQL Developer尋找tnsnames.ora的依據。有了這個環境變量,PL/SQL Developer啟動是會自動發現連接配置。

          NLS_LANG環境變量,值為:SIMPLIFIED CHINESE_CHINA.ZHS16GBK。這個值要與oracle服務器配置的一致,oracle服務器默認是:SIMPLIFIED CHINESE_CHINA.ZHS16GBK。

          Path環境變量,將Oracle client的主目錄。類似於:C:\app\Lzj\product\11.2.0\client_1,進入path末尾。

1. 配置PL/SQL Developer

    啟動時,登錄選擇取消,進入主界面。

    選擇菜單:工具/首選項/連接,見下面界面。

    

    主要設置:Oracle 主目錄名、OCI庫

    Oracle 主目錄名:就是安裝的Oracle client的主目錄。類似於:C:\app\Lzj\product\11.2.0\client_1,我這里是我安裝客戶端時自定義目錄

    OCI庫:Oracle Client的主目錄下ock.dll文件。類似於:C:\app\Lzj\product\11.2.0\client_1\oci.dll

    這里,有個問題,就是你明明設置好了,但下次啟動,發現這兩個配置沒了。

    我不明白的是,Oracle Client安裝成功后,兩個配置為何不會自動發現。畢竟不手動填寫是自動發現。

    需要配置三個環境變量,如果已配置過,則不用配置:

    TNS_ADMIN環境變量,類似於:C:\app\Lzj\product\11.2.0\client_1\network\admin。這個變量實際上是PL/SQL Developer尋找tnsnames.ora的依據。有了這個環境變量,PL/SQL Developer啟動是會自動發現連接配置。

    NLS_LANG環境變量,值為:SIMPLIFIED CHINESE_CHINA.ZHS16GBK。這個值要與oracle服務器配置的一致,oracle服務器默認是:SIMPLIFIED CHINESE_CHINA.ZHS16GBK。

    Path環境變量,將Oracle client的主目錄。類似於:C:\app\Lzj\product\11.2.0\client_1,進入path末尾。

    還需注意:

    Oracle Client安裝成功后,注冊表里的值。

    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient11g_home1,下ORACLE_HOME,值為:E:\instantclient_11_2\。這是我的自定義配額制連接Oracle Client路徑。如果Oracle Client是默認安裝,則類似於:C:\app\Lzj\product\11.2.0\client_1。這個就是Oracle Client主目錄。可能沒有KEY_OraClient11g_home1,我這個是在本機安裝了Oracle數據庫,如果沒有則是只安裝了Oracle Client。

2. 編輯tnsnames.ora文件

    這里要說明的是tnsnames.ora的位置,網上說的不一致。主要取決於TNS_ADMIN環境變量。我這里配置成:E:\instantclient_11_2\network\admin。

    在tnsnames.ora文件所在位置的同一路徑下,還需要:listener.ora、sqlnet.ora文件。

    我把oracle服務器自動生成的三個文件內容列在下面:

    listener.ora

    

# listener.ora Network Configuration File: E:\instantclient_11_2\network\admin\listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app

    sqlnet.ora

    

# sqlnet.ora Network Configuration File: E:\instantclient_11_2\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

    tnsnames.ora

    

# tnsnames.ora Network Configuration File: E:\instantclient_11_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
  

    可以在tnsnames.ora文件末尾加入自己的配置

    

xxxxx =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST =xxxxx)(PORT = 1521))
    (CONNECT_DATA =
    (SID = orcl)
      (SERVER = DEDICATED)
    )
  )

這里有個誤區就是如果你的連接名(就是上面第一行的xxxxx),前面不能有任何字符,空格也不行。

否則PL/SQL Developer登錄時會報:ORA-12154: TNS: 無法解析指定的連接標識符


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM