#sqlnet.authentication_services = (NONE)
names.directory_path = (TNSNAMES, HOSTNAME)
names.default_domain = world
name.default_zone = world
automatic_ipc = off所以服务名后面都要加上.world,比如:CARD.WORLD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
(CONNECT_DATA = (SID = CARD))
)
但是在oracle9i下则要这样配置:CARD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = CARD)
)
)oracle9i的SQLNET.ORA是这样的:路径:oracle\ora92\network\admin\SQLNET.ORA# SQLNET.ORA Network Configuration File: C:\oracle\ora92\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)所以如果按照oarcle8.1.5的配置参考oracle9i的配置,显然是不对的。因为oracle8.1.5中的SQLNET.ORA文件定义了服务名必须要有.world根据oracle版本, SID 可能是要改成service_name。 参考一下listener.ora的global_name.确定在sqlnet.ora里,names.default_domain设置空字符。排除了这些应该没什么问题了。