【轉發】ORACLE配置tnsnames.ora文件實例


 
 
【個人感悟與牢騷,請無視】因為剛接觸新業務,之前完全沒有使用過oracle,因為tnsnames.ora配置文件里的內容不懂,被部門老員工坑了一把。。。自我反省一下,還是業務不熟練,痛定思痛,決定自己搞明白原理。。。所有制將操作不講原理的培訓,都是耍流氓!以上。——2016年4月21日
 
安裝過ORACLE的都知道,oracle安裝時需要進行配置,這個配置可以在客戶端的企業管理器步一步進行,或者直接拷貝一個tnsnames.ora文件到安裝目錄下(c:\app\Administrator\product\11.2.0\client_1\network\admin)。
為什么要配置這個文件?這個文件的作用又是什么?

SQL SERVER你使用客戶端的時候,會自動搜過局域網內的在線的數據庫,你就可以清楚知道哪台可以連。但ORACLE不同,不能像SQL SERVER列出來。ORACLE的客戶機為了和服務器連接,必須先和服務器上的監聽進程聯絡。ORACLE通過tnsnames.ora文件中的連接描述符來說明連接信息。一般tnsnames.ora 是建立在客戶機上的。如果是客戶機/服務器結構,整個網絡上只有一台機器安裝了ORACLE數據庫服務器,那么只需在每個要訪問ORACLE服務器的客戶機上定義該文件,在服務器上無需定義。但是,如果網絡上有多台機器均安裝了ORACLE數據庫服務器,並且服務器之間有數據共享的要求,那么在每台服務器上都必須定義該文件。tnsnames.ora文件缺省放在/ORACLE_HOME/ product/8.1.7/network/admin目錄下。

tnsnames.ora是配置連接字符串的,會配置你連的IP,端口,數據庫實例等信息記錄客戶端訪問數據庫的本地配置。下面是tnsnames.ora的文件樣式:

_____________________________________________________________分割線________________________________________________________________
ORA817 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = ora817.huawei.com)
    )
  )

INST1_HTTP =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = ora817.huawei.com)
      (PRESENTATION = http://admin)
    )
  )

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

________________________________________________________分割線______________________________________________________________
字段含義如下:

ADDRESS_LIST      表示該客戶機要經由多種協議與一台或多台服務器連接。在該樣式文件中就表示該客戶機要用TCP/IP協議來和服務器相連
PROTOCOL  指明要連接使用的協議
SERVICE_NAME      “SERVICE_NAME”就是“GlobalDatabase Name”,ORACLE8i數據庫使用“GlobalDatabaseName”來唯一標識自己,通常的格式為“name.domain”,此處的值為“ora817.huawei.com”
HOST      是TCP/IP協議使用的服務器IP地址
PORT      是TCP/IP使用的端口地址
SID      指定要連接的服務器上ORACLE數據庫的ORACLE_SID
SERVER=DEDICATED  表示用專用服務器連接ORACLE數據庫。

下面是一個tnsnames.ora文件內容舉例:
ora =                                             //連接描述符名:ora
  (description =                               //描述
          (address =                                 //網絡地址之一
                 (protocol = tcp)                        //網絡協議(tcp表示TCP/IP協議)
                 (host = 129.9.114.22)              //服務器IP地址:129.9.114.22
                 (port = 1251)                          //服務器端口號:1251
         ) 
       (connect_data =                         //連接數據
                (sid = ora7)                            //數據庫標識名:ora7

                (SERVER = DEDICATED)

                (SERVICE_NAME = ora9i) 

         ) 

 ) 

 


免責聲明!

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



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