更改oracle RAC public ip,vip,scan ip和private ip
更改oracle RAC public ip,vip,scan ip和private ip
oifcfg - Oracle 接口配置工具
用法: oifcfg iflist [-p [-n]]
oifcfg setif {-node | -global} {/:}...
oifcfg getif [-node | -global] [ -if [/] [-type ] ]
oifcfg delif [-node | -global] [[/]]
oifcfg [-help]
- 为通信网络所知的主机名
- 系统中配置的接口的名称
- 接口的子网地址
- 接口类型 { cluster_interconnect | public | storage }
用例:
root@SHYQ-PS-MV-SV03-CDMPDB1:/#oifcfg getif -global
en0 172.16.14.0 global public
en3 1.1.14.0 global cluster_interconnect
bash-2.03$ oifcfg iflist
ce0 172.25.0.0
ce0 172.25.198.0
ce1 10.0.0.0
bash-2.03$ oifcfg iflist -p
ce0 172.25.0.0 PRIVATE
ce0 172.25.198.0 PRIVATE
ce1 10.0.0.0 PRIVATE
bash-2.03$ oifcfg iflist -p -n
ce0 172.25.0.0 PRIVATE 255.255.0.0
ce0 172.25.198.0 PRIVATE 255.255.255.0
ce1 10.0.0.0 PRIVATE 255.255.255.0
利用getif可以获取当前节点的配置:
bash-2.03$ oifcfg getif
ce0 172.25.0.0 global public
ce1 10.0.0.0 global cluster_interconnect
bash-2.03$ oifcfg getif -if ce0
ce0 172.25.0.0 global public
bash-2.03$ oifcfg getif -if ce1
ce1 10.0.0.0 global cluster_interconnect
利用oifcfg删除添加网络接口的时候,oracle用户的权限不够,需要切换为root用户执行:
bash-2.03# /data/oracle/product/10.2/crs/bin/oifcfg delif -global ce1
bash-2.03# /data/oracle/product/10.2/crs/bin/oifcfg setif -global ce1/10.0.0.0:cluster_interconnect
bash-2.03# /data/oracle/product/10.2/crs/bin/oifcfg getif -global
ce0 172.25.0.0 global public
ce1 10.0.0.0 global cluster_interconnect
完整例子:
11GR2 RAC modify vip,public ip,private ip,scan vip
实施步骤
1 修改目的
根据业务的需求,需要由原来的临时IP改为生产ip,以下为调整前后对应的IP表
调整前对应ip表
--------------------------------------------------------------
主机名 类型 IP 地址 网卡端口
P570a public ip 192.168.128.10 en0
p570a-vip vip 192.168.128.12 en0
p570a-priv private ip 172.168.128.10 en2
p570b public ip 192.168.128.11 en0
p570b-vip vip 192.168.128.13 en0
p570b-priv private ip 172.168.128.11 en2
scan-vip scan 192.168.128.100 en0
--------------------------------------------------------------
调整后对应ip表
主机名 类型 IP 地址 网卡端口
P570a public ip 10.76.31.112 en0
p570a-vip vip 10.76.31.113 en0
p570a-priv private ip 192.76.31.113 en8
p570b public ip 10.76.31.114 en0
p570b-vip vip 10.76.31.115 en0
p570b-priv private ip 192.76.31.115 en8
scan-vip scan 10.76.31.111 en0
--------------------------------------------------------------
网卡端口可以用ifconfig -a 显示出来
2 修改public ip,vip,scan vip
2.1 停止两边节点数据库,监听,并且停止crs
A、grid用户执行如下操作
$ srvctl stop database -d gdcdc -o immediate
$ srvctl stop listener -n p570a
$ srvctl stop listener -n p570b
B、root用户
cd /grid/app/11.2.0/grid/bin
./crsctl stop crs
可以用ps –ef|grep grid看进程是否完全关闭
2.2 修改两边节点的/etc/hosts文件
修改前先做个备份
cp /etc/hosts /etc/hosts.bak
修改后如下所示:
10.76.31.112 p570a
10.76.31.113 p570a-vip
172.168.128.10 p570a-priv
10.76.31.114 p570b
10.76.31.115 p570b-vip
172.168.128.11 p570b-priv
10.76.31.111 scan-vip
注意这里私网ip地址暂时先不做修改,修改private ip时再修改
2.3 修改两个节点上的public ip,vip,scan vip
2.3.1修改p570a节点 public ip
用smitty命令修改物理ip
smitty tcpip
选择en0
修改ip为 10.76.31.112,网关为10.76.31.1
掩码为 255.255.255.0
2.3.2修改P570b节点 public ip
用smitty命令修改物理ip
smitty tcpip
选择en0
第4页共11页
修改ip为 10.76.31.114,网关为10.76.31.1
掩码为255.255.255.0
2.3.3两边节点启动crs,用oifcfg 命令修改public ip
A、root用户停止crs,一边节点做即可(注意)
cd /grid/app/11.2.0/grid/bin
./crsctl start crs
B、root用户检查修改
先用oifcfg getif查看当前设置
./oifcfg getif
en0 192.168.128.0 global public
en2 172.168.128.0 global cluster_interconnect
修改
./oifcfg delif -global en0
./oifcfg setif -global en0/10.76.31.0:public
两边节点确认
./oifcfg getif
en0 10.76.31.0 global public
en2 172.168.128.0 global cluster_interconnect
2.3.4修改VIP
A、关闭database,grid或者oracle用户操作
root用户下运行以下命令
cd /grid/app/11.2.0/grid/bin
./srvctl stop database -d gdcdc -o immediate
B、检查VIP设置信息(grid用户操作)
用srvctl config vip 检查vip设置
$ srvctl config vip -n p570a
VIP exists.:p570a
VIP exists.: /p570a-vip/192.168.128.12/255.255.255.0/eth0
$ srvctl config vip -n p570b
VIP exists.:p570b
VIP exists.: /p570b-vip/192.168.128.13/255.255.255.0/eth0
C、停止vip 服务和修改vip(grid用户操作)
./srvctl stop listener -n p570a
./srvctl stop listener -n p570b
./srvctl stop vip -n p570a
./srvctl stop vip -n p570b
./srvctl modify nodeapps -n p570a -A 10.76.31.113/255.255.255.0/en0
./srvctl modify nodeapps -n p570b -A 10.76.31.115/255.255.255.0/en0
D、确认是否修改成功
./srvctl config vip -n p570a
VIP exists.:p570a
VIP exists.:/p570a-vip/10.76.31.113/255.255.255.0/en0
./srvctl config vip -n p570b
VIP exists.:p570b
VIP exists.:/p570b-vip/10.76.31.115/255.255.255.0/en0
E、启动vip服务,监听,数据库
./srvctl start vip -n p570a
./srvctl start vip -n p570b
./srvctl start listener -n p570a
./srvctl start listener -n p570b
./srvctl start database –d gdcdc
2.3.5 两边节点修改local_listener参数
该部分应该是在修改完VIP之后,重启数据库由oraagent自动注册进去。
Show parameter local_listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string (DESCRIPTION=(ADDRESS_LIST=(AD
DRESS=(PROTOCOL=TCP)(HOST=192.
168.128.12)(PORT=1521))))
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.76.31.113)(PORT=1521))))' scope=both sid='gdcdc1';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.76.31.115)(PORT=1521))))' scope=both sid='gdcdc2';
2.3.6修改SCAN VIP
1.srvctl config scan 查看当前vip设置
config scan SCAN name: 192.168.128.100, Network: 1/192.168.128.0/255.255.255.0/en0 SCAN VIP name: scan1, IP: /scan-vip/192.168.128.100
2.用root用户停止scan_listener 和sacn vip
$GRID_HOME/bin/srvctl stop scan_listener
$GRID_HOME/bin/srvctl stop scan
$GRID_HOME/bin/srvctl status scan
SCAN VIP scan1 is enabled SCAN VIP scan1 is not running
$GRID_HOME/bin/srvctl status scan_listener SCAN Listener LISTENER_SCAN1 is enabled SCAN listener LISTENER_SCAN1 is not running
3.用root用户修改scan vip
$GRID_HOME/bin/srvctl modify scan -n10.76.31.111
4.检查是否修改成功
config scan SCAN name: 10.76.31.111 , Network: 1/10.76.31.0/255.255.255.0/en0 SCAN VIP name: scan1, IP: /scan-vip/10.76.31.111
5.启动scan和scan_listener
$GRID_HOME/bin/srvctl start scan
$GRID_HOME/bin/srvctl start scan_listener
3 修改 private ip
3.1 确保crs集群是打开的
可以用olsnodes –s 检查集群的状态
./olsnodes -s
P570a Active
P570b Active
3.2 用oifcfg getif 检查和oifcfg setif修改当前private 设置
修改前设置
./oifcfg getif
en0 10.76.31.0 global public
en2 172.168.128.0 global cluster_interconnect
修改private ip,新网络端口号为en8,如果没有修改端口号,则设置的值还是为en2
./oifcfg setif -global en8/192.76.31.0:cluster_interconnect
./oifcfg delif -global en2
修改后设置
./oifcfg getif
en0 10.76.31.0 global public
en8 192.76.31.0 global cluster_interconnect
3.3 两边节点停止database和crs
./srvctl stop database -d gdcdc -o immedate
./crsctl stop crs
检查是否关闭
ps -ef|grep grid
ps -ef|grep oracle
3.4 修改两边节点/etc/hosts表
172.168.128.10 p570a-priv
172.168.128.11 p570b-priv
修改为
192.76.31.113 p570a-priv
192.76.31.115 p570b-priv
3.5 修改p570a节点 private ip
用smitty命令修改物理私网ip
smitty tcpip
选择en8
修改ip为 192.76.31.113 掩码为 255.255.255.0
3.6 修改P570b节点 private ip
用smitty命令修改物理私网ip
smitty tcpip
选择en8
修改ip为 192.76.31.115 掩码为 255.255.255.0
3.7 两边节点启动crs
crsctl start crs
检查资源组状态
crsctl status resource –t
如果都online,则没问题。
4 实施总结
1. 在修改public ip时注意修改对应的正确网关,如果不修改,有可能导致vip服务起不来。
2. 注意检查修改hosts文件,因为改ip后,hosts文件会增加记录。
public ip对应的掩码也要修改正确,
3. 主机名在安装crs时要规划好,一旦装好后,就不能修改,否则要重新安装crs。
4. 11GR2 srvctl 新增 config vip命令
5. 修改private ip的顺序刚好和10gR2相反,10gR2是先关闭crs,然后修改hosts表和物理ip,再启动crs,用oifcfg 设置新私网ip,这点要注意,否则按10gR2修改私网的方法,会导致CRS集群起不来,所以做之前先做好备份。
6. 如果两边节点local_listener参数没修改的话,会导致客户端连接不到数据库报ERROR:ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序,这是因为scan_listener 认到的还是修改前的vip
原文:https://blog.csdn.net/weixin_34389926/article/details/85139489
更改oracle RAC public ip,vip,scan ip和private ip的更多相关文章
- oracle 11.2.0.4 rac 修改 ip vip scan ip
修改前host文件 198.27.73.21 ht-d01 198.27.73.22 ht-d02 198.27.73.25 ht-d01-vip 198.27.73.26 ht-d02-vip 19 ...
- oracle RAC的VIP和scan
我们都知道Oracle RAC中每个节点都有一个虚拟IP,简称VIP,与公网IP在同一个网段. 没有VIP时,Oracle客户端是靠"TCP/IP协议栈超时"来判断服务器故障.而T ...
- 【转】Oracle RAC 环境下的连接管理
文章转自:http://www.oracle.com/technetwork/cn/articles/database-performance/oracle-rac-connection-mgmt-1 ...
- Oracle RAC 环境下的连接管理(转) --- 防止原文连接失效
崔华老师的文章!!! 这篇文章详细介绍了Oracle RAC环境下的连接管理,分别介绍了什么是 Connect Time Load Balancing.Runtime Connection Load ...
- GitHub: Oracle RAC Database on Docker 未测试 改天试试
https://github.com/oracle/docker-images/blob/master/OracleDatabase/RAC/OracleRealApplicationClusters ...
- Oracle RAC的机制与测试方法
Oracle RAC的机制与测试方法 标签: rac 机制 测试 2016-05-25 09:54 1150人阅读 评论(0) 收藏 举报 分类: oracle(2) 1.RAC原理 Oracle ...
- oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)
结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.7.Oracle 11G R2 RAC修改public网络IP
问题:Linuxrac2节点的public网IP被占用,导致集群节点2无法访问 1.禁止相关CRS资源的启动,停止这些资源(vip,listener,scan,scan_listener,databa ...
- oracle 11g RAC public/virtual/SACN/private IP we need to know
1.3.2.2 IP Address Requirements Before starting the installation, you must have at least two interfa ...
随机推荐
- STS工具:mybayis连接oracle数据库
1.pom.xml文件中的依赖 刚添加依赖的时候会报错,原因是jar包下不下来. 2.我的jdk是1.6,所以需要升级jdk版本到1.8 执行mvn -v命令,可以看到maven的版本号 DOS窗口执 ...
- (转)初试 Netflix 开源持续云交付平台 Spinnaker
目录 Spinnaker 介绍 环境.软件准备 安装 Development Spinnaker 配置依赖环境 配置并安装 Spinnaker 演示 Spinnaker Pipeline 演示 Spi ...
- 内存管理3- @property 参数详解
@property ----------------- Create two classes: Book & Student ------------------- book.m #impor ...
- 2019巅峰极客CTF-web1(LOL英雄联盟)
今晚有空 以后随缘写博客了 好好沉淀 web1当天做出的队伍很少 其实不难 折腾到最后就差一步 可惜 0x01 读取文件 截图没留了 只留了代码部分. 有个页面 有上传和下载功能 起初 ...
- 【面试题总结】1、统计字符串中某个单词出现的次数(1-C++实现)
[解决方法一]C++ map解决 一.map中的find函数: 用于查找map中是否包含某个关键字条目,传入的参数是要查找的key,最后返回一个迭代器,如果没有找到,则返回的迭代器等于end()返回的 ...
- @Transactional注解不生效的原因总结(整理网上和自己遇到的解决方案)
1.问题背景 今天做项目,发现配置好@Transactional后,没有生效,事务没有回滚,即便在网上查资料,也没有解决,好像网上没有人发过我遇见的这种情况的帖子. 2.自己遇到的情况分析 代码结构图 ...
- Linux下批量ping某个网段的脚本
比如现在需要对192.168.0.0/24网段的ip进行检查,检查哪些ip现在被占用,哪些ip没有被占用,可以通过ping命令来检查,也可以通过nmap接参数来检查 ping命令脚本如下: [root ...
- 北大ACM - POJ试题分类
1.入门水题 可用于练手与增强自信 POJ-1003POJ-1004 POJ-1005 POJ-1207 POJ-3299 POJ-2159 POJ-1083POJ-3094 2.初级 2.1. 基本 ...
- ORACLE EXECUTE IMMEDIATE 小结
EXECUTE IMMEDIATE 代替了以前Oracle8i中DBMS_SQL package包.它解析并马上执行动态的SQL语句或非运行时创建的PL/SQL块.动态创建和执行SQL语句性能超前,E ...
- ClipDrawable
Clip可以译为剪的意思,我们可以把ClipDrawable理解为从位图上剪下一个部分; Android中的进度条就是使用ClipDrawable来实现的,他根据设置level的值来决定剪切 区域的大 ...