在一个 instance 中,配置多个 监听进程
由于 监听进程(tnslsnr)是串行机制的进程,当瞬时有多个连接时,很容易出现连接等待直至超时,如果出现 bug,更有可能监听会 断掉。所以,一个有效的办法是 配置多个监听进程,让不同的 进程处理不同的应用。这里介绍下配置的方法
1、 使用 netca 图形界面创建新的监听,或者 直接修改 listener.ora 文件,加上
LISTENER_test =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1522))
)
)
)
上面这段就可以了,然后启动监听
lsnrctl start LISTENER_test
2、 修改 tnsnames.ora 文件中,加上 如下这段:
LISTENER_test =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
)
注意,要让 pmon 注册到 1522 和 1521 两个端口,所以,要加上两个 端口的监听
3、 修改 local_listener 参数
Alter system set local_listener=’LISTENER_test’;
4、 alter system register 下,就可以看到了
[oracle@localhost admin]$ ps -ef|grep tnslsnr
oracle 3998 1 0 11:41 pts/3 00:00:00 /home/oracle/oracle92/bin/tnslsnr LISTENER_test -inherit
oracle 4200 3705 0 11:45 pts/3 00:00:00 grep tnslsnr
oracle 7317 1 0 2010 ? 00:00:29 /home/oracle/oracle92/bin/tnslsnr LISTENER -inherit
这样,如果我们去连接 LISTENER_test,如果 1522 的端口 断了,那么会自动去连接 1521 端口,当然,也可以直接使用 1522 或者 1521 端口
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14730395/viewspace-686442/,如需转载,请注明出处,否则将追究法律责任。