一、静态监听
静态注册就是实例启动时读取listener.ora文件的配置,将实例和服务注册到监听程序。 无论何时启动一个数据库,默认地都有 两条信息注册到监听器中:数据库服务器对应的实例和服务。 实例不必启动,静态监听也能注册 服务器启动静态监听后,可以远程远程启库
1.1 配置文件
静态注册时 listener.ora中的GLOBAL_DBNAME向外提供服务名 listener.ora中的SID_NAME提供注册的实例名 LISTENER2= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=MES)(PORT=1523)) ) ) SID_LIST_LISTENER2= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=PROD) (ORACL_HOME=/u01/app/oracle/product/11.2.0/dbhome_1) (SID_NAME=PROD) ) )
1.2 配置本地监听位置
alter system set local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = MES)(PORT = 1523
1.3 启动监听
[oracle@MES ~]$ lsnrctl start LISTENER2
1.4 远程连接启库
sqlplus sys/oracle@192.168.1.72:1523/PROD as sysdba
二、动态监听
动态注册是在instance启动的时候PMON进程根据参数文件中的instance_name,service_names 两个参数将实例和服务动态注册到listener中
2.1 配置文件
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = MES)(PORT = 1521)) ) )
动态注册默认只注册到默认的监听器上(名称是LISTENER、端口是1521、协议是TCP), 如果需要向非默认监听注册,则需要配置local_listener参数! SYS@PROD> alter system set local_listener = ''; --此时默认注册到1521端口
2.2 启动监听
[oracle@MES ~]$ lsnrctl start [oracle@MES ~]$ lsnrctl status