Oracle 监听的理解、添加静态监听,动态监听

1、动态监听
自动通过打开的库去寻找instancename,默认端口1521,数据库必须开启,动态监听是数据库PMON通过配置设置(也可以是默认值)向指定的监听注册,静态监听没有这个过程。
有没有此文件都不影响开启监听 listener.ora

2、静态监听是通过文件中指定的instancename,端口可任意设置,数据库可关闭
必须配置 listener.ora

静态监听
SID_LIST_LISTENER1 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = in)   --服务名
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1) --$ORACLE_HOME
      (SID_NAME= PROD)   --sid
    )
  )

动态监听
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.174.131)(PORT = 1521))
    )
  )
静态监是一种硬编码,将实例写在listener.ora上
静态监听硬编码的部份是ORACLE_HOME以及ORACLE_SID

理解

1、动态监听是数据库启动时注册到监听的,一旦数据库关闭,用户无法连接
2、静态监听是在listener.ora中配置的,即使数据库关闭,用户也能登陆数据库进行操作
3、动态监听无需修改配置文件,数据库通过自身配置动态注册
4、静态监听需要修改监听配置文件

添加静态监听

vim listener.ora   再listener上加上一个配置,静态监听是在listener.ora中配置的

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = ins)                                    --对外的服务名
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)  --$ORACLE_HOME
      (SID_NAME= PROD)                                         --SID_NAME 与实例的 SID 等同,对应 instance_name
    )
  )


加多个
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = ins)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
      (SID_NAME= PROD)
    )
   (SID_DESC =
      (GLOBAL_DBNAME = inspur)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
      (SID_NAME= PROD)
    )
  )

你可能感兴趣的:(oracle,oracle,数据库)