2011-10-14 38 views
4

我正在嘗試編寫一個VB腳本來添加/編輯/刪除tnsnames.ora中的一些條目。使用這種配置(假設有可能),Oracle客戶端應該引用現有的tnsnames.ora文件(比如說myProjectOraNames.ora)而不是修改tnsnames.ora文件將很方便在TNSORANAMES.ora中引用外部文件

和我的新myProjectOraNames.ora獲取服務的詳細信息。

是否有任何選項/配置可以完成此功能?

+0

你調查甲骨文OID? – Randy

回答

0

冒着一些衝突或故障,您可以始終使用TNS_ADMIN變量來確定SQL * Net配置文件(如sqlnet.ora和tnsnames.ora)所在的目錄的位置。 在你的腳本,你可以做以下性質的東西:

set TNS_ADMIN=\some\path 

,然後用更新進行 - 客戶端與運行(請確保\some\path擁有所有前作所需的SQL * Net的文件。)此上下文將查找\some\path下的文件。但是,我不認爲你可以爲這個環境變量定義多個路徑。

7

您也可以使用IFILE命令將主tnsnames.ora文件配置爲使用其他文件。

例如,在我的筆記本電腦上,我爲不同的客戶端分開了tnsnames.ora文件。所以,我的tnsnames.ora文件看起來像

JCAVE11G.WORLD = 
    (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = <<ip address>>)(PORT = 1521)) 
    (CONNECT_DATA = 
     (SERVER = DEDICATED) 
     (SERVICE_NAME = jcave11gr2) 
    ) 
) 


IFILE = c:\oracle\product\11.1.0\db_1\Network\Admin\tnsnames.ora.client1 
IFILE = c:\oracle\product\11.1.0\db_1\Network\Admin\tnsnames.ora.client2 
IFILE = c:\oracle\product\11.1.0\db_1\Network\Admin\tnsnames.ora.client3 

你可以做同樣的事情,其中​​主tnsnames.ora文件有一個IFILE引用您的myProjectOraNames.ora文件