关于listener的一些理解



在单机环境下,只启动数据库不会拉起listener。

一般先启动listener(lsnrctl start),再启动数据库(startup)数据库会自动将服务注册到监听

若现启动数据库,再启动监听,lsnrctl status 时可能没有服务,过几分钟等pmon自己注册监听或者 手动alter system register都可以

   若是等待数据库自己注册,但过几分钟,监听还是没有服务,就要看看端口号是不是1521,oracle默认注册 1521端口。此时手动注册即可

       如果想让数据库注册非1521端口,需要修改parameter 中local_listener的值

       alter system set local_listener = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.xxx)(PORT = 1522))' sid='orcl';

      说到local_listener,与之下相关的是remote_listener.官方文档对remote_listener这样解释

      REMOTE_LISTENER specifies a network name that resolves to an address or address list of Oracle Net remote listeners (that is, listeners that are not running on the same machine as this instance). The address or address list is specified in the TNSNAMES.ORA file or other address repository as configured for your system.

    实际上就是说,采用remote_listener参数可以实现数据库和listener的分离。不过我不知道这种分离有什么用,出于安全还是负载均衡。

    单机环境的remote_listener 一般为空。

rac环境下,listener是跟随集群crs启动的。而且数据库 rdbms的启动要依赖asm实例的资源,所以不存在启动数据库后,listener没启动,当然出现故障除外。

    rac下也有local_listener和remote_listener.

        local_listener是该节点的listener信息

        remote_listener一般是如下的信息

SQL> show parameter remote_listener


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_listener                      string      scan:1521
在这里remote_listener应该是作为负载均衡来使用的。

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值