11g RAC 自定义 remote_listener/local_listener




1.使用图形化工具netmgr建立local监听(LISTENER_RAC1/LISTENER_RAC2),将监听的描述符粘贴到listener中
2.修改local listener
    alter system set local_listener='(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.28.101)(PORT = 1522)))' sid='racdb1';
    alter system set local_listener='(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.28.102)(PORT = 1522)))' sid='racdb2';
3.启动本地监听
   
   
LSNRCTL> start LISTENER_RAC1
Starting /u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...
 
TNSLSNR for Linux: Version 11.2.0.1.0 - Production
System parameter file is /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
 
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.28.101)(PORT=1522)))
STATUS of the LISTENER
------------------------
Alias LISTENER_RAC1
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 16-OCT-2015 11:19:55
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
The listener supports no services
The command completed successfully
LSNRCTL> status LISTENER_RAC1
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.28.101)(PORT=1522)))
STATUS of the LISTENER
------------------------
Alias LISTENER_RAC1
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 16-OCT-2015 11:19:55
Uptime 0 days 0 hr. 1 min. 14 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
Services Summary...
Service "racdb" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
Service "racdbXDB" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
Service "taf_service" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
The command completed successfully

4.修改 远程监听参数 remote listener
     alter system set remote_listener='racscan:1522';
5.修改远程监听端口scan端口
    srvctl modify scan_listener -p 1522
  
  
[grid@Rac1 ~]$ srvctl modify scan_listener -p 1522
[grid@Rac1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1522
[grid@Rac1 ~]$ srvctl stop scan_listener
[grid@Rac1 ~]$ srvctl start scan_listener
6.重启远程监听

7.客户端连接描述符
RACDB_TAF =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = racscan)(PORT = 1522))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = taf_service)
    )
  )

8.结论
    本地的监听需要手工通过lsnrctl命令管理,重启
    远程的监听变成了集群的资源使用srvctl命令管理,重启
    远程监听-本地监听-service结构(scan listener 也就是remote listener,而service存在于数据库实例上)


9.问题
如果3节点RAC,service 在3个节点上,但远程监听只在rac1,rac2上,那么第三个节点是否参与负载均衡?是否参与故障转移?








1.使用图形化工具netmgr建立local监听(LISTENER_RAC1/LISTENER_RAC2),将监听的描述符粘贴到listener中
2.修改local listener
    alter system set local_listener='(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.28.101)(PORT = 1522)))' sid='racdb1';
    alter system set local_listener='(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.28.102)(PORT = 1522)))' sid='racdb2';
3.启动本地监听
    
    
LSNRCTL> start LISTENER_RAC1
Starting /u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...
 
TNSLSNR for Linux: Version 11.2.0.1.0 - Production
System parameter file is /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
 
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.28.101)(PORT=1522)))
STATUS of the LISTENER
------------------------
Alias LISTENER_RAC1
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 16-OCT-2015 11:19:55
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
The listener supports no services
The command completed successfully
LSNRCTL> status LISTENER_RAC1
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.28.101)(PORT=1522)))
STATUS of the LISTENER
------------------------
Alias LISTENER_RAC1
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 16-OCT-2015 11:19:55
Uptime 0 days 0 hr. 1 min. 14 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/Rac1/listener_rac1/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.28.101)(PORT=1522)))
Services Summary...
Service "racdb" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
Service "racdbXDB" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
Service "taf_service" has 1 instance(s).
Instance "racdb1", status READY, has 1 handler(s) for this service...
The command completed successfully

4.修改 远程监听参数 remote listener
     alter system set remote_listener='racscan:1522';
5.修改远程监听端口scan端口
    srvctl modify scan_listener -p 1522
   
   
[grid@Rac1 ~]$ srvctl modify scan_listener -p 1522
[grid@Rac1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1522
[grid@Rac1 ~]$ srvctl stop scan_listener
[grid@Rac1 ~]$ srvctl start scan_listener
6.重启远程监听

7.客户端连接描述符
RACDB_TAF =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = racscan)(PORT = 1522))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = taf_service)
    )
  )

8.结论
    本地的监听需要手工通过lsnrctl命令管理,重启
    远程的监听变成了集群的资源使用srvctl命令管理,重启
    远程监听-本地监听-service结构(scan listener 也就是remote listener,而service存在于数据库实例上)


9.问题
如果3节点RAC,service 在3个节点上,但远程监听只在rac1,rac2上,那么第三个节点是否参与负载均衡?是否参与故障转移?







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值