在$ORACLE_HOME/network/admin目录下面没有listener.ora,tnsnames.ora,sqlnet.ora文件,只有一个sample的模版目录和一个shrept.lst的文件,这些都没有配置的情况下,lsnrctl start竟然能够正常的启动监听服务,lsnrctl开启了LISTENER进程,并且有相关的日志文件?

查询了下LISTENER相关官方定义:

A listener is configured with one or more listening protocol addresses, information about supported services, and parameters that control its run-time behavior. The listener configuration is stored in a configuration file named  listener.ora .Because all of the configuration parameters have default values, it is possible to start and use a listener with no configuration. This default listener has a name of  LISTENER ,supports no services on startup, and listens on the following TCP/IP protocol address:(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1521))

一个 监听被配置1个或者多个监听协议地址,关于支持的服务信息和控制运行行为的参数。这个配置信息存储在listener.ora配置文件中。因为所有的配置参数都有默认值,所以它可以在没有配置的情况下去启动和使用一个监听。LISTENER是默认监听名,可以支持没有services下基于tcp/ip启动并监听。(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1521))

The listener forwards client requests to supported services. These services can be configured statically in the  listener.ora file or they can be dynamically registered with the listener. This dynamic registration feature is called service registration. The registration is performed by the PMON process, an instance background process of each database instance that is configured in the database initialization parameter file.Dynamic service registration does not require any manual configuration in the listener.ora file.

监听转发客户端请求给支持的service.这些services 能被静态注册在listener.ora中,或者也可以动态注册。动态注册的功能被称之为 service registration.该注册是由pmon(每一个被初始化参数配置过的数据库实例的后台进程)执行。动态注册不需要在listener.ora中做任何手动配置。

Setting Initialization Parameters for Service Registration(动态注册)

To ensure service registration works properly, the initialization parameter file should

contain the following parameters:

■ SERVICE_NAMES for the database service name

■ INSTANCE_NAME for the instance name

■ LOCAL_LISTENER for the local listener

■ REMOTE_LISTENER for the remote listener, if any

监听程序是通过pmon进程来进行管理的,pmon进程会每隔一分钟将数据库服务进程注册

但是,pmon进程只向默认的1521端口进行监听的注册,当监听不再1521端口上时,需要以下的方法来实现:

1、直接在Oracle init Parameter中修改local_listener值,输入监听地址,pmon进程会根据此信息,进行相关的监听注册

alter system set local_listener='(address=(protocol=tcp)(port=5555)(host=localhost))';

2、在参数local_listener中只输入监听的名称,在tnsnames.ora中配置监听端口

alter system set local_listener='test';

在$ORACLE_HOME/network/admin/tnsnames.ora中包含监听地址,pmon进程会从此处获得监听信息,并进行注册

TEST = (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.200)(PORT=5555))

3、pmon进程每一分钟注册一次监听,当监听刚刚启动的时候,可能还没有进行相关的注册,这个时候的监听服务是不能够使用的

4、在修改local_listener参数时,pmon进程也会重新注册一次

5、如果数据库shutdown之后,pmon进程也会相应的终止,服务会从监听中删除,这时只能使用os认证的方式连接到数据库

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30264304/viewspace-1728668/,如需转载,请注明出处,否则将追究法律责任。

oracle dynamic set,Oracle Dynamically Listener(动态监听)相关推荐

  1. oracle未获得监听器,无监听文件listener.ora的动态监听小例试验

    在数据库服务器上,监听文件的位置是:$ORACLE_HOME/network/admin/listener.ora 试验如下: 移动db服务器上的监听文件,如下命令: [oracle@ENMOEDU ...

  2. oracle什么时候使用静态监听,Oracle监听之动态监听与静态监听特点

    动态注册不需要显示的配置listener.ora文件,实例启动的时候,PMON进程根据instance_name,service_name参数将实例和服务动态注册 1.如何查询某服务是静态监听注册还是 ...

  3. oracle 动态监听例子,ORACLE动态监听总结

    1 动态监听 本文档介绍ORACLE动态监听服务的配置及原理: 1.1 监听文件 $ORACLE_HOME/network/admin/listener.ora 1.2 动态监听 ORACLE实例在启 ...

  4. Oracle 动态监听和静态监听非1521端口配置

    硬核配置方法, 动态监听配置默认的1521不做演示 动态注册非1521端口,需要配置三个地方listener.ora.tnsname.ora.local_listener. listener.ora配 ...

  5. oracle12541 linux,PLSQL连接Linux上的oracle数据库出现,ORA-12541 TNS 无监听程序

    PLSQL连接Linux上的oracle数据库出现,ORA-12541 TNS 无监听程序 外部的PLSQL无法连接Linux上的oracle数据库,出现ORA-12541 TNS 无监听程序错误.待 ...

  6. oracle重启监听12541,oracle数据 报 “ora-12541:TNS:无监听程序”错误

    PLsql登录oracle数据 报 "ora-12541:TNS:无监听程序"错误,但不输入"数据库"在默认情况下可以登录.并且D:oracleproduct1 ...

  7. 连接ORACLE数据库提示:ORA-12541: TNS: 无监听程序

    背景 在连接ORACLE数据库提示:ORA-12541: TNS: 无监听程序问题,在网上搜了许多文章使用了很多方法,比如重启监听,重启数据库等都无效 解决方案 1.检查listener.ora中的h ...

  8. 在centos上,oracle数据库更改IP后无法启动监听,解决方法

    在centos上,oracle数据库更改IP后无法启动监听,解决方法 参考文章: (1)在centos上,oracle数据库更改IP后无法启动监听,解决方法 (2)https://www.cnblog ...

  9. 本地java【动态监听】zk集群节点变化

    [README]搭建zk cluster, refer 2 https://blog.csdn.net/PacosonSWJTU/article/details/111404364 [1] 动态监听代 ...

最新文章

  1. 十、分享一道LeetCode较为简单的单链表题,但是却能激发起练习算法的极大的兴趣
  2. 迷你DVD管理器项目
  3. 欢迎使用CSDN-markdown编辑器!!!
  4. 『数据库』无聊到爆炸的数据库文章--数据库的安全性
  5. 使用ICSharpCode.TextEditor制作一个语法高亮显示的XML编辑器
  6. ubuntu php7.0 redis,ubuntu 搭建php7 redis
  7. 【Java从0到架构师】MyBatis - 缓存_构造方法
  8. 跟着大彬读源码 - Redis 1 - 启动服务,程序都干了什么?
  9. 【转】Dubbo架构设计详解
  10. C++中引用变量的探究
  11. 一千啊计算机英语,计算机英语900句
  12. 电脑录屏软件哪个好?快速录制高清视频的方法是什么?
  13. s3c6410地址映射
  14. 零极限:关于蓝色太阳水原理
  15. 利用k-mer进行基因组调查
  16. 泛在传感器网络(Ubiquitous Sensor Network; USN)
  17. hdu 5145 NPY and girls (莫队算法)
  18. 图片服务器 imgproxy 入门教程--实现图片实时裁剪/压缩/处理等操作
  19. CNFs/CNTs复合薄膜-供应高储能效率铁电聚合物基电介质/ 三硒化二铟In2Se3/ 硒化铟(InSe和In2Se3)纳米/Cu(In,Ga)Se_2和Cu_2ZnSnSe_4薄膜定制
  20. php如何给导航加链接,修改phpcms导航链接的方法

热门文章

  1. Windows Server 2003成员服务器基准用户权限分配策略
  2. Linux 命令(69)—— objcopy 命令
  3. oracle登录总结
  4. (Life)质量和服务_由购买联想笔记本想到的
  5. tp3.2框架关闭日志记录
  6. CSU 2151 集训难度(线段树)
  7. VC运行库版本不同导致链接.LIB静态库时发生重复定义问题的一个案例分析和总结...
  8. eclipse springmvc+Thymeleaf
  9. Controller层返回字符串
  10. SQL语句中常用关键词及其解释如下.pdf