欢迎投稿

今日深度:

Oracle的静态注册和动态注册详解,

Oracle的静态注册和动态注册详解,


目录
  • oracle的静态注册和动态注册
    • 静态注册:
    • 动态注册: (数据库默认是动态注册)
  • 扩展:

    oracle的静态注册和动态注册

    静态注册:

    静态注册 : 指将实例的相关信息手动告知 listener 侦 听 器 , 可以使用netmgr,netca,oem 以及直接 vi listener.ora 文件来实现静态注册,在动态注册不稳定时使用,特点是:稳定,注册过程比动态过程慢静态注册时,listener.ora 中的 GLOBAL_DBNAME 向外提供服务名,listener.ora 中的 SID_NAME 提供注册的实例名。

    采取静态注册方法时,listener.ora 中的内容如下:

    # listener.ora Network Configuration File: /oracle/app/oracle/product/19c/db_1/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    
    
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME = fgzcdb)
          (ORACLE_HOME = /oracle/app/oracle/product/19c/db_1)
          (SID_NAME = fgzcdb)
        )
      )
    LISTENER =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = hfzcdb91)(PORT = 1521))
      )
    

    动态注册: (数据库默认是动态注册)

    [oracle@hfzcdb91:/home/oracle]$lsnrctl status     #status READY
    

    实例在启动时使用 PMON 进程自动将 instance_name 和 service_names 等信息注册到已启动的缺省侦 听器 listener.ora,

    在 9i 之后,不需要任何配置即可实现动态注册.实例启动后会自动在本地主机默认的号端口上查找侦 听器,并在查找到时进行注册 。

    [oracle@hfzcdb91:/oracle/app/oracle/product/19c/db_1/network/admin]$vi listener.ora
    
    # listener.ora Network Configuration File: /oracle/app/oracle/product/19c/db_1/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = hfzcdb91)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        )
    

    默认安装时,会安装一个PL/SQL外部程序(ExtProc)条目在listener.ora中, 是oracle为调用外部程序默认配置的监听,它的名字通常是ExtProc或PLSExtProc,但一般不会使用它。可以直接从listener.ora中将这项移除,因为对ExtProc已经有多种攻击手段了,在不使用外部程序时,oracle也是建议删除的。

    既然有动态监听为什么还要静态监听呢?原因如下:

    1.监听器不是最早启动,oracle 实例先启动

    2.监听器重启 【动态监听注册有一定时间】

    3.oracle 实例没有 open

    扩展:

    在 oracle12c 以前的版本中服务注册一直都是由 PMON 进程负责 , 从 12c 起 oracle 引入了 LREG (listener registration) 后台进程接管了这部分工作从而减轻 PMON 的工作

    动态监听与静态监听

    动态监听:LREG((listener registration)后台进程会自动将实例注册到监听上。关键字ready静态监听:手工编写或者使用netmgr程序设置监听。他会一直监听需要注册的实例。

    静态监听:关键字unknown如果你使用动态监听的时候发现始终无法注册实例,可以使用下面的方法:

    SQL>alter system set local listener='' scope=both;
    System altered.
    SQL>alter system register;
    System altered.
    

    到此这篇关于Oracle的静态注册和动态注册详解的文章就介绍到这了,更多相关Oracle静态和动态注册内容请搜索PHP之友以前的文章或继续浏览下面的相关文章希望大家以后多多支持PHP之友!

    您可能感兴趣的文章:
    • Oracle Listener 动态注册 与 静态注册
    • Oracle静态注册与动态注册详解
    • Oracle监听注册的实现
    • Oracle试用到期如何删除注册表继续试用30天
    • mvc C# JavaScript LigerUI oracle实现用户的注册、登陆验证、登陆
    • JAVA简单链接Oracle数据库 注册和登陆功能的实现代码

    www.htsjk.Com true http://www.htsjk.com/oracle/48603.html NewsArticle Oracle的静态注册和动态注册详解, 目录 oracle的静态注册和动态注册 静态注册: 动态注册: (数据库默认是动态注册) 扩展: oracle的静态注册和动态注册 静态注册: 静态注册 : 指将...
    评论暂时关闭