關於Oralce的遠程連接

 

----------------------------------------------------------------------------------------------------------------------------------------------------------

1. 在oralce所在服務器上通過命令行窗口,利用sqlplus可以連接oracle
2. 遠程連接oracle: oracle將遠程連接的需要的部分抽取出來了,做成了一個
    小工具包(instanceclient),這個工具包裏邊包含了一個sqlplus工具;
    進到instanceclient目錄下,打開命令行 輸入:
        sqlplus 用戶名/密碼@ip:1521/orcl
3. plsql安裝使用:
    1.安裝plsql,然後在tools-->preferences-->connection-->
        1. Oracle Home  D:\Develop\instantclient_12_1 這是配置客戶端連接工具
            instanceclient,因爲plsql本身沒有連接功能,而是藉助於連接工具來連接oracle的;
        2. OCI library  D:\Develop\instantclient_12_1\oci.dll    (動態連接庫)
        3. 將oracle的一個文件 tnsnames.ora 賦值到本地
        4. 在環境變量中配置 tnsnames.ora 文件: 變量名TNS_admin 
        
4. 思路整理:
    1. 在 tnsnames.ora 中,將 協議/ip/端口/實例 賦值給變量 ORCL10
    2. 在環境變量中配置 tnsnames.ora,這樣 ORCL10就可以被識別爲一個確定的數據庫了
    3. PL/SQL 通過: 用戶名/密碼/ORCL10,就可以連接上數據庫了;
        1. PL/SQL中配置了 instanceclient
        2. instanceclient 中內置了 sqlplus
        3. sqlplus本身可以連接數據庫
    連接流程: PL/SQL 連接界面輸入:用戶名/密碼/ORCL10--->ORCL10在 tnsnames.ora中作爲變量
        指向了特定數據庫,並且在環境變量中配置了tnsnames.ora的位置 ----> PL/SQL連接
    

5. 解決中文亂碼
    1. 查詢服務器的編碼:
        select userenv('language') from dual
        SIMPLIFIED CHINESE_CHINA.AL32UTF8
    2. 在本地環境變量中配置,使本地編碼與服務器編碼一致,就不會出現亂碼問題了:
        變量名 NLS_LANG   
        變量值 SIMPLIFIED CHINESE_CHINA.AL32UTF8
        
    3. 我實際在環境變量中是配的這個,好像也行:
        變量名 NLS_LANG       (Native Language Support)
        變量值 SIMPLIFIED CHINESE_CHINA.ZHS16GBK


=============================下邊附上 tnsnames.ora==========================        
# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORCL10 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.80.8)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )        

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章