监听状态的查看,我们一般使用如下命令:
lsnrctl status
但是,这样一般查看到的是默认 listener 的状态,其他 listener 的状态需要,使用用如下命令:
lsnrctl status listener2
lsnrctl status listener_scan1
那么,集群监听资源的状态如何查看呢?命令如下:
[grid:rac01]:/home/grid> srvctl status listener -n rac01
Listener LISTENER is enabled on node(s) :rac01
Listener LISTENER is running on node(s) :rac01
Listener LISTENER2 is enabled on node(s) :rac01
Listener LISTENER2 is running on node(s) :rac01
[grid:rac01]:/home/grid>
另外,关于 listener_scan1 的监听状态,是这样的:
RAC 集群安装好后,会有2个监听:LISTENER 和 LISTENER_SCAN1,通过这2个监听都可以连接到数据库,但他们之间的区别是, 在没有使用DNS的情况下,SCAN IP 并不能真正的起到(设计的)作用,该IP 会飘在某个节点上。也就是说,当你使用 lsnrctl status listener_scan1
命令在节点1上查看不到状态时,就去节点2看看。看这里Oracle RAC 集群的LISTENER 和 LISTENER_SCAN1 监听状态查看。