OracleRac跨网段修改Public IP/VIP/Private IP/Scan IP

本验证于测试环境,生产操作需谨慎

现为测试环境,机器有且仅有两个网卡存在,需求修改Public IP/VIP/Private IP/Scan IP,把Public IP/VIP/Scan IP的网段改为Private IP的网段,Private IP于Public IP网段互换。
先停掉两个节点的数据库

csharp 复制代码
#(ORACLE)
$ srvctl stop database -d <db_name>

操作前最好先备份两个节点的profile.xml文件

csharp 复制代码
#(GRID)
$ cd $GRID_HOME/gpnp/<hostname>/profiles/peer/
$ cp -p profile.xml profile.xml.bk

用grid用户在一个节点上关闭监听

csharp 复制代码
#(GRID)
$ srvctl stop listener -n <hostname1>
$ srvctl stop listener -n <hostname2>
$ srvctl stop scan_listener

用grid用户在一节点关闭vip和scan vip

csharp 复制代码
#(GRID)
$ srvctl stop vip -n <hostname1>
$ srvctl stop vip -n <hostname2>
$ srvctl stop scan

用grid用户在一节点更改私公网和网通讯接口

csharp 复制代码
#(GRID)
$ oifcfg getif  --查看当前公网和网通讯接口

$ oifcfg  getifg
team1 20.8.91.0 global public
team2 16.0.100.0  global cluster_interconnect,asm
csharp 复制代码
#(GRID)
$ oifcfg setif -global <私有网卡名>/<新私有网段>:cluster_interconnect,asm

$ oifcfg setif -global team1/20.8.91.0 :cluster_interconnect,asm
$ oifcfg setif -global team2 /16.0.100.0  :public

grid用户登陆一节点配置新的priv子网

csharp 复制代码
#(GRID)
$ srvctl config listener -asmlistener
$ srvctl config asm  
--查看原ASMLISTENER

添加新的ASMLISTENER:

csharp 复制代码
#(GRID)
$ srvctl add listener -asmlistener -l ASMNET1LSNR2_ASM -subnet 20.8.91.0 

删除旧的ASMLISTENER:

csharp 复制代码
#(GRID)
$ lsnrctl stop ASMNET1LSNR_ASM
$ srvctl update listener -listener ASMNET1LSNR_ASM -asm -remove -force

root用户配置asmnetwork

csharp 复制代码
$(ROOT)
# srvctl config asmnetwork
# srvctl stop asmnetwork
# srvctl remove asmnetwork -netnum 1
# srvctl add asmnetwork -netnum 1 -subnet 20.8.91.0 

修改后关闭集群自启动并关闭集群

csharp 复制代码
$(ROOT)
# crsctl disable crs
# crsctl stop cluster -all

重启集群后root用户修改VIP资源为目标IP

csharp 复制代码
$(ROOT)
# srvctl modify nodeapps -n <hostname1> -A <hostname1-vip>/255.255.255.0/<网卡>
# srvctl modify nodeapps -n <hostname2> -A <hostname2-vip>/255.255.255.0/<网卡>
验证是否修改成功
# srvctl config vip -n <hostname1>
# srvctl config vip -n <hostname2>

修改scan IP

csharp 复制代码
$(ROOT)
# srvctl modify scan -n <scan-IP名>

#srvctl modify scan -n yysd-scan

#(GRID)
$ srvctl modify scan_listener -u
$ srvctl config scan
$ srvctl config scan_listener

用户grid登陆任一节点启动vip资源和scan vip资源

csharp 复制代码
#(GRID)
$ srvctl start vip -n <hostname1>
$ srvctl start vip -n <hostname2>
$ srvctl start scan
$ srvctl start listener -n <hostname1>
$ srvctl start listener -n <hostname2>
$ srvctl start scan_listener
相关推荐
数据智能老司机16 小时前
CockroachDB权威指南——CockroachDB SQL
数据库·分布式·架构
数据智能老司机16 小时前
CockroachDB权威指南——开始使用
数据库·分布式·架构
松果猿16 小时前
空间数据库学习(二)—— PostgreSQL数据库的备份转储和导入恢复
数据库
无名之逆17 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
s91236010117 小时前
rust 同时处理多个异步任务
java·数据库·rust
数据智能老司机17 小时前
CockroachDB权威指南——CockroachDB 架构
数据库·分布式·架构
hzulwy17 小时前
Redis常用的数据结构及其使用场景
数据库·redis
程序猿熊跃晖17 小时前
解决 MyBatis-Plus 中 `update.setProcInsId(null)` 不生效的问题
数据库·tomcat·mybatis
Three~stone19 小时前
MySQL学习集--DDL
数据库·sql·学习
Qi妙代码19 小时前
MYSQL基础
数据库·mysql·oracle