LOCAL_LISTENER 引起的错误

1. 如果你的LOCAL_LISTENER 指定的是一个别名 比如L2

*.local_listener='L2'

启动实例的时候 会先到 tnsnames.ora 文件里取查找定义名为L2的TNS服务名.实例起来后会尝试把数据库服务注册到ADDRESS指定地址。

而这个地址就是你自己定义的Listener所监听的地址,这样Oracle实例就会把数据库服务自动注册到非默认的监听器了。

文件:tnsnames.ora

L2 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = m_oracle)
    )
  )

1. 如果HOST是一个不能识别的主机名,启动的时候会报错提示监听地址不对.

SQL> startup

ORA-00119: invalid specification for system parameter LOCAL_LISTENER

ORA-00130: invalid listener address '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=1111qqq)(PORT=1522))(CONNECT_DATA=(SERVICE_NAME=m_oracle)))'

2. 如果主机名正确,端口不对,数据库能正常启动,只是不能注册成功.运行命令 lsnrctl status L2 会发现数据库服务没有注册成功.

3. 如果 tnsnames.ora 文件中没有名字为L2的定义条目,那么ORA-00132提示L2名字不能解析.

SQL> startup

ORA-00119: invalid specification for system parameter LOCAL_LISTENER

ORA-00132: syntax error or unresolved network name 'L2'

2. 如果 LOCAL_LISTENER的值是一个地址描述符或者一个地址描述符列表(address_list/address)

例如 *.local_listener='(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT = 1522)))'

那么实例启动的时候会知道尝试到指定地址注册数据库服务,这个时候只可能出现上面提到的前两种错误.

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值