2016-04-27 51 views
0

我剛剛從Oracle SQL Developer創建了一個名爲BATCHINSERT的新數據庫連接。但是當我嘗試tnsping時,我收到以下錯誤消息。如何爲新的數據庫連接編寫sqlnet.ora和tnsnames.ora

TNS Ping Utility for 64-bit Windows: Version 11.2.0.2.0 - Production on 27-APR-2016 15:28:37 

Copyright (c) 1997, 2014, Oracle. All rights reserved. 

Used parameter files: 
C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\sqlnet.ora 

TNS-03505: Failed to resolve name 

這是我sqlnet.ora

# sqlnet.ora network configuration file in 
# /opt/oracle/product/11.2.0/network/admin 
NAMES.DIRECTORY_PATH=(TNSNAMES) 
NAMES.DEFAULT_DOMAIN=WORLD 
SQLNET.AUTHENTICATION_SERVICES = (NTS) 

這是我tnsnames.ora

BatchInsert= 
(DESCRIPTION = 
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) 
(CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SID = XE) 
)) 

如何寫好它,所以我可以從.bat文件運行它的入口?

+0

沒有得到你的答案 –

回答

3

sqlnet.oraWORLD默認域名,所以你tnsnames記錄必須有太:

BatchInsert.WORLD= 
(DESCRIPTION = 
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) 
(CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SID = XE) 
)) 

然後,您應該能夠tnsping和使用任何batchinsertbatchinsert.world連接。

或者,您可以從sqlnet.ora中刪除NAMES.DEFAULT_DOMAIN=WORLD行,但您可能已經有其他事情已經期望設置。

這與SQL Developer無關,除非您想在連接定義中使用該TNS別名,而不是使用Basic連接。如果您已經擁有XE的TNS條目,則可以使用該條目,而無需定義指向相同服務/ SID的新條目。

+0

它通過在ora文件中添加enteries運行正常 –

1

SQL Developer的默認不讀SQLNET.ORA

易修復,在首選項,指向目錄的TNSNAMES文件。

tns directory sql developer preferences

如果啓用瘦驅動程序連接,讓您的$ ORACLE_HOME OS VAR集,然後SQLDev應該看到和使用你的sqlnet.ora文件進行連接的東西。