tnsnames.oRA配置相关
1,listener.ora 仅在服务器端配置,客户端不需要配置
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(PROGRAM = extproc)
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\app\product\11.2.0\dbhome_1)
)
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = D:\app\product\11.2.0\dbhome_1)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.179.0.164)(PORT = 1521))
)
)
ADR_BASE_LISTENER = D:\app
2,tnsnames.oRA
服务器端,客户端都可以进行配置
个人理解:服务器端可以配置,但是没有意义。执行sqlplus username/pass@DBname 和 sqlplus username/pass效果是一样的。只是Oracle后台的连接方式不一样。
这里需要注意:
如果客户端和服务器端装在同一台PC上,安装完成后进行客户端连接测试的时候,最好用客户端的图形化工具net manager去测试,
用sqlplus命令测试的时候,由于客户端和服务器端都有sqlplus工具,而默认的环境变量中,服务器端的Oracle_home会在客户端的前面,
所以默认执行sqlplus username/pass@DBname的时候,监听的是服务端的tnsnames.oRA,不会去监听的是客户端的tnsnames.oRA。
服务器端如果没有配置tnsnames.oRA或者该文件不存在,则会监听异常。
如果测试客户端tnsnames.oRA的配置文件时,需要先进入到客户端的%Oracle_home%/Bin目录(比如 cd /d D:\app\product\11.2.0\client_1\bin)下,
然后进行测试配置是否完成。
orc =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.179.0.164)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
3,服务器端listener.ora进行修改后,最好重启监听服务(lsnrctl stop;lsnrctl start)。lsnrctl status可以查看监听状态。

浙公网安备 33010602011771号