Oracle rac 11g修改监听接口

来源:互联网 发布:ubuntu如何删除软件 编辑:程序博客网 时间:2024/05/16 09:01

注意:

1.本文的os是Oracle Linx 5.8,DB版本是11.2.0.4.0。
   本文非exadata环境,若是Exadata环境,请读Changing Listener Ports On RAC/EXADATA (文档 ID 1473035.1)
2.本文修改了如下监听器的端口号,改为1528

1.(1)修改前的检查

[html] view plain copy
  1. [grid@hosta admin]$ srvctl config listener  
  2. Name: LISTENER  
  3. Network: 1, Owner: grid  
  4. Home: <CRS home>  
  5. End points: TCP:1521  
  6. [grid@hosta admin]$   

   (2)查询系统的hostname与oracle数据库的sid

[html] view plain copy
  1. [grid@hosta ~]$  srvctl status database -d orcl 


2.仅仅在一个主机上执行,修改本地监听的端口

[html] view plain copy
  1. [grid@hosta admin]$ srvctl modify listener -l LISTENER -p "TCP:1528"  

3. 修改SCAN监听的端口

将SCAN监听的端口修改为1528,本地监听的端口不变,依然为1521:

[grid@hosta ~]# srvctl modify scan_listener -p 1528
  • 1
  • 1

修改后查看监听状态:

[grid@hosta ~]$ lsnrctl status LISTENER_SCAN1LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 06-5月 -2016 01:32:52Copyright (c) 1991, 2011, Oracle.  All rights reserved.正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))LISTENER 的 STATUS------------------------别名                      LISTENER_SCAN1版本                      TNSLSNR for Linux: Version 11.2.0.3.0 - Production启动日期                  06-5月 -2016 01:31:28正常运行时间              00 小时 123 秒跟踪级别                  off安全性                    ON: Local OS AuthenticationSNMP                      OFF监听程序参数文件          /u01/app/11.2.0/grid/product/db_1/network/admin/listener.ora监听程序日志文件          /u01/app/11.2.0/grid/product/db_1/log/diag/tnslsnr/web2/listener_scan1/alert/log.xml监听端点概要...  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.15)(PORT=1521)))服务摘要..服务 "orcl" 包含 2 个实例。  实例 "orcl1", 状态 READY, 包含此服务的 1 个处理程序...  实例 "orcl2", 状态 READY, 包含此服务的 1 个处理程序...服务 "orclXDB" 包含 2 个实例。  实例 "orcl1", 状态 READY, 包含此服务的 1 个处理程序...  实例 "orcl2", 状态 READY, 包含此服务的 1 个处理程序...命令执行成功[grid@web2 ~]$ 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

发现SCAN监听端口号还是1521,是因为没有重启监听原因,接下来重启监听:

[grid@hosta ~]# srvctl stop scan_listener[grid@hosta ~]# srvctl start scan_listener
  • 1
  • 2
  • 1
  • 2

更改确认:

[grid@hosta ~]# srvctl config scan_listenerSCAN 监听程序 LISTENER_SCAN1 已存在。端口: TCP:3521[root@hosta ~]# 

4.修改LOCAL_LISTENER仅仅在一个主机上执行

[html] view plain cop5
  1. alter system set local_listener = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.188.183)(PORT = 1528))' scope=both  sid='orcl1';  
  2. alter system set local_listener = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.188.184)(PORT = 1528))' scope=both  sid='orcl2';  

5.修改remote_listener

5[html] view plain copy
  1. alter system set remote_listener='orcl-scan:1528' scope=both;  

6.在第一个节点关闭本地监听

[html] view plain copy
  1. [grid@hosta ~]$ srvctl stop listener -l LISTENER -n hosta  

修改第一个节点的$GI_HOME/network/admin/endpoints_listener.ora文件,将1521改为1528

[html] view plain copy
  1. [grid@hosta admin]$ cat listener.ora--->该文件中不存储端口号,因此不用修改。  
  2. LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))  # line added by Agent  
  3. LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))  # line added by Agent  
  4. ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON  # line added by Agent  
  5. ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON  # line added by Agent  
  6. [grid@hosta admin]$ cat endpoints_listener.ora --->该文件中存储端口号,修改本文件即可。  
  7. LISTENER_HOSTA=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hosta-vip)(PORT=1528))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.188.181)(PORT=1528)(IP=FIRST))))  # line added by Agent  
  8. [grid@hosta admin]$   


启动第一个节点本地监听

[html] view plain copy
  1. [grid@hosta admin]$ srvctl start listener -l LISTENER -n hosta  

7.在第二个节点上进行相同的操作。

[html] view plain copy
  1. [grid@hostb ~]$ srvctl stop listener -l LISTENER -n hostb  
  2.   
  3. 修改endpoints_listener.ora文件,不再贴出  
  4. [grid@hostb admin]$ srvctl start listener -l LISTENER -n hostb  

6.确认修改效果

[html] view plain copy
  1. [grid@hostb admin]$ srvctl config Listener  
  2. Name: LISTENER  
  3. Network: 1, Owner: grid  
  4. Home: <CRS home>  
  5. End points: TCP:1528  

之后,应用程序连接串以及dblink的定义修改端口号,启动业务进行测试即可。

原创粉丝点击