我刚从Oracle SQL Developer创建了一个名为BATCHINSERT
的新数据库连接。但是当我尝试tnsping
时,我收到以下错误。
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.ora
设置的默认域名为WORLD
,因此您的tnsnames
条目也需要具有该名称:
BatchInsert.WORLD=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = XE)
))
然后,您应该tnsping
并使用batchinsert
或batchinsert.world
进行连接。
或者,您可以从NAMES.DEFAULT_DOMAIN=WORLD
中移除sqlnet.ora
行,但您可能还有其他事情需要设置。
这与SQL Developer无关,除非您想在连接定义中使用该TNS别名,而不是使用Basic
连接。如果您已经拥有XE的TNS条目,则可以使用它,而无需定义指向同一服务/ SID的新条目。
答案 1 :(得分:1)