IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉貼|軟件發(fā)布

您當前所在位置: 首頁數(shù)據(jù)庫Oracle → Oracle命名方法配置

Oracle命名方法配置

時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)

  目標:

  描述主機命名與本地服務名稱解析之間的區(qū)別

  使用 Oracle Net Configuration Assistant 配置:

  主機命名方法

  本地命名方法

  網(wǎng)絡服務名

  排除簡單連接出現(xiàn)的故障

  要點:

  1.命名方法概覽

  客戶機應用程序在試圖連接數(shù)據(jù)庫服務時,需要借助命名方法將連接標識符解析為連接描述符。

  Oracle Net 提供了五種命名方法:

  主機命名(Host Naming):使 TCP/IP 環(huán)境中的用戶能夠通過其現(xiàn)有名稱解析服務來解析名稱

  本地命名:使用在每個客戶機的 tnsnames.ora 文件中配置和存儲的信息查找網(wǎng)絡地址

  目錄命名:將數(shù)據(jù)庫服務或網(wǎng)絡服務名解析為連接描述符,該描述符存儲在中央目錄服務器中

  Oracle Names:這是由 Oracle Names 服務器系統(tǒng)構成的 Oracle 目錄服務,這些服務器可以為網(wǎng)絡上的每個服務提供由名稱到地址的解析

  外部命名:使用受支持的第三方命名服務

  對于只有幾個數(shù)據(jù)庫的小型組織來說,應使用主機命名將名稱存儲在現(xiàn)有名稱解析服務中,也可使用本地命名將名稱存儲在客戶機上的 tnsnames.ora 文件中。

  對于有多個數(shù)據(jù)庫的大型組織來說,應使用目錄命名將名稱存儲在集中管理的符合 LDAP 的目錄服務器中。

  2.主機命名

  在下列情況下,客戶機可使用主機名來連接服務器:

  使用 Oracle Net Services Client 軟件連接 Oracle 數(shù)據(jù)庫服務

  使用 TCP/IP 協(xié)議建立客戶機與服務器的連接

  主機名通過 DNS 或本地的 /etc/hosts 文件等 IP 地址轉換機制來解析

  不使用 "連接管理器" (Connection Manager) 或安全選項等高級功能

  主機命名方法具有下列優(yōu)點:

  需要的用戶配置最少。用戶只需提供主機名即可建立連接。

  無需創(chuàng)建與維護本地名稱配置文件 (tnsnames.ora)。

  無需了解 Oracle Names 或 Oracle Internet Directory 管理過程。

  主機命名在每個節(jié)點上只能標識一個 SID,而使用其它命名方法還可標識其它 SID。

  如果在主機 (hosts) 文件中對多個全局名稱設置了別名,讓它們指向同一 IP 地址,這樣即使這些數(shù)據(jù)庫位于同一節(jié)點上,也可使用主機命名連接任意數(shù)據(jù)庫。

  客戶端要求

  如果使用主機命名方法,則必須在客戶機上安裝 TCP/IP 協(xié)議。此外,還必須安裝 Oracle Net Services 和 TCP/IP 協(xié)議適配器。

  主機名通過域名服務 (Domain Name Services, DNS)、網(wǎng)絡信息服務 (Network Information Services, NIS) 或集中維護的 TCP/IP 主機文件等 IP 地址轉換機制來解析。

  使用主機命名方法之前,必須先對客戶端進行如上配置。

  服務器端要求

  如果使用主機命名方法,除了客戶機,還必須在服務器上也安裝 TCP/IP 協(xié)議。此外,需要在服務器端安裝 Oracle Net Services 和 TCP/IP 協(xié)議適配器。

  在 Oracle8i 和 Oracle9i 中,只要滿足以下條件之一就可向監(jiān)聽程序自動注冊有關數(shù)據(jù)庫的信息(包括全局數(shù)據(jù)庫名稱):

  在端口 1521 上使用 TCP/IP 運行的名為 LISTENER 的缺省監(jiān)聽程序正在運行

  已在初始化文件中設置了 LOCAL_LISTENER 參數(shù)

  早期版本中是通過listener.ora文件向監(jiān)聽程序注冊數(shù)據(jù)庫信息的。必須靜態(tài)配置SID_LIST_listener_name段以包含GLOBAL_DBNAME參數(shù)。

  全局數(shù)據(jù)庫名稱由數(shù)據(jù)庫名稱和數(shù)據(jù)庫域名構成??梢詮某跏蓟瘏?shù)文件中的SERVICE_NAMES參數(shù)或DB_NAME和DB_DOMAIN參數(shù)來獲取 GLOBAL_DBNAME 的值。

  主機名必須與在客戶機中指定的連接字符串匹配。其它信息還包括要連接的數(shù)據(jù)庫的信息。

  說明:

  主機命名在客戶端使用sqlnet.ora文件,在服務器端使用listener.ora文件。

  sqlnet.ora中的NAMES.DIRECTORY_PATH參數(shù)確定的是連接時搜尋先后順序。例如,NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME),

  則先從本地TNSNAMES文件中去找連接時提供的描述符,如果沒有發(fā)現(xiàn)匹配的,則再去oracle name server上找,

  再沒有則使用主機命名方法進行連接——將連接描述符(假定為test)當作一個主機去連接,去該主機上尋找GLOBAL_DBNAME=test的實例(實例名可能不是test)進行連接。

  3.本地命名

  本地命名的優(yōu)點:

  提供了一種相對簡單明了的解析服務名地址的方法。

  對于使用不同協(xié)議的各個網(wǎng)絡,可跨網(wǎng)絡解析服務名。

  可使用圖形配置工具輕松配置。

  本地命名方法要求網(wǎng)絡服務名存儲在 tnsnames.ora 文件中。

  本地命名在客戶端使用tnsnames.ora和sqlnet.ora文件,在服務器端使用listener.ora文件。

  在圖形化界面中配置網(wǎng)絡服務名:

  service name為該數(shù)據(jù)庫服務的service name,一般為db_name.db_domain

  net服務名為按該服務在本地的標識符,相當于別名。

  4.故障排除

  ORA-12154:"TNS:無法解析服務名"

  原因:Oracle Net Services 找不到在 tnsnames.ora 配置文件中指定的連接描述符。

  操作:

  檢查 tnsnames.ora 文件是否存在以及是否可訪問。

  檢查 tnsnames.ora 文件是否位于 TNS_ADMIN 環(huán)境變量指定的位置中。

  在 tnsnames.ora 文件中,核實在連接字符串中指定的服務名已經(jīng)映射為tnsnames.ora文件中的連接描述符。還要核實文件中沒有語法錯誤。

  確認不存在 sqlnet.ora 文件的重復副本。

  如果正從登錄對話框連接,則應核實連接服務名前沒有 at 符號 (@)。

  ORA-12198:"TNS:找不到指向目標的路徑"和ORA-12203:"TNS:無法連接目標"

  原因:客戶機找不到所需數(shù)據(jù)庫。

  操作:

  核實已正確輸入要連接的數(shù)據(jù)庫的服務名。

  核實 TNSNAMES.ORA 文件的連接描述符中的服務名 ADDRESS 參數(shù)是正確的。

  核實 TNSNAMES.ORA 文件已存儲在 TNS_ADMIN 環(huán)境變量定義的目錄中。

  核實遠程節(jié)點上的監(jiān)聽程序已經(jīng)啟動并正在運行。如果未啟動,可使用 "監(jiān)聽程序控制實用程序"啟動監(jiān)聽程序。

  如果正從登錄對話框連接,則應核實連接服務名前沒有 at 符號 (@)。

  ORA-12533:"TNS:ADDRESS 參數(shù)非法"

  原因:tnsnames.ora 文件內指定的連接描述符的 ADDRESS 段中的協(xié)議特定參數(shù)不正確。

  操作:

  有關針對不同協(xié)議的關鍵字的詳細信息,請參考適用于平臺的 Oracle 操作系統(tǒng)文檔。

  ORA-12541:TNS:沒有監(jiān)聽程序

  原因:無法與遠程節(jié)點上的監(jiān)聽程序取得聯(lián)系。

  操作:

  核實遠程節(jié)點上的監(jiān)聽程序已經(jīng)啟動。可使用 "監(jiān)聽程序控制實用程序" 的 STATUS 命令檢查監(jiān)聽程序的狀態(tài)。如果需要,還可使用 START 命令啟動該監(jiān)聽程序。

關鍵詞標簽:Oracle

相關閱讀

文章評論
發(fā)表評論

熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實例的控制文件 誤刪Oracle數(shù)據(jù)庫實例的控制文件 為UNIX服務器設置Oracle全文檢索 為UNIX服務器設置Oracle全文檢索

相關下載

    人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法