​本文为墨天轮数据库管理服务团队第61期技术分享,内容原创,作者为技术顾问胡振兴,如需转载请联系小墨(VX:modb666)并注明来源。如需获得更多团队技术干货,可关注【墨天轮】公众号。

​在生产中有时候会遇到网络变更,Oracle RAC IP信息更换等情况,分别测试下RAC几种IP的修改方法。

1、前期准备

本次实验使用的是 Oracle 19C RAC 2 节点的数据库,数据库名称为

PROD,实例名为 PROD1/PROD2,在正式进行修改之前,需要先确认好源环境的 IP 信息以及需要修改后的 IP 信息。

原环境IP信息:

新环境IP信息:

在确认好 IP 信息之后,就可以做一些前置工作

  • 备份 OCR 和 GPNP profile 文件
  • 正常关库、监听和 CRS
  • 修改 /etc/hosts 配置文件
  • OS 层修改公有网卡地址
  • 启动 crs

2、备份 OCR 和 GPNP profile 文件

从 Oracle 11.2 GI 开始,私有网络配置不仅仅存在 ocr 中,还存在 gpnp profile 中,在正式操作前,建议先备份 OCR 以及 GPNP profile 文件,防止修改过程中失败可以回退用。

切换到 grid 用户,所有节点均需执行

节点一:

节点二:

root 用户执行手工 OCR 的备份:

查看OCR的手工备份:

3、正常关库、监听和 CRS

首先需要关闭 Oracle 相关的资源,先正常关闭数据库,然后关闭监听,最后关闭两个节点的 crs:

单节点 grid 用户执行

在所有节点用 root 用户执行

[root@jay-r1 ~]# /u01/app/19.3.0/grid/bin/crsctl stop crs

[root@jay-r2 ~]# /u01/app/19.3.0/grid/bin/crsctl stop crs

注意: 这样再次启动crs时,就不会自动启动监听和数据库了。

4、修改 /etc/hosts 配置文件

建议先将所有节点原来的 /etc/hosts 文件备份,不要直接进行修改:

[root@jay-r1 ~]# cp /etc/hosts /etc/hosts.bak

[root@jay-r2 ~]# cp /etc/hosts /etc/hosts.bak

然后再修改/etc/hosts文件,将对应 IP 修改为如下值(Private IP 暂时不改)

注意: 其他内容不需要改变

5、OS 层修改公有网卡地址

接下来就是进行系统层的网络 IP 信息修改:

节点一:

节点二 :

修改网卡 IP 地址之后,使用新的 IP 地址登录:

6、启动 crs

主机层的 IP 修改完之后,就可以启动 CRS:

在所有节点用 root 用户执行

正常来说,在关闭 CRS 之前正常关闭数据库和监听,所以应该不会带动数据库和监听启动,但是有些数据库会配置开机自动,所以需要检查数据库和监听是否启动:

如果是正常启动状态,建议先关闭:

[grid@jay-r1:/home/grid]$srvctl stop database -d prod

[grid@jay-r1:/home/grid]$srvctl stop listener

7、Public IP

root 用户查看并修改共享盘网络配置:

由于我们这里修改 IP 地址并没有涉及到网关的变化,属于同网段 IP 修改,所以不需要进行修改。如果是跨网段修改为

192.168.1.0,则可以参照以下进行操作:

/u01/app/19.3.0/grid/bin/oifcfg delif -global ens33

/u01/app/19.3.0/grid/bin/oifcfg setif -global ens33/192.168.1.0:public

所有节点查看验证修改成功

8、Virtual IP

修改 Virtual IP 需要停止数据库、监听和VIP,如果按照之前操作,目前数据库和监听已经是停止状态:

查看VIP 当前配置:

修改 VIP 设置:

再次验证 VIP 修改完成

启动 vip:

确认 local\_listener 信息:

节点一:

节点二:

修改为新的VIP

9、SCAN IP

首先需要停止 scan\_listener 和 scan 资源:

使用 root 用户修改SCAN VIP:

修改并启动资源:

如果同时修改 scan 名称,还需要修改数据库参数 remote\_listener:

alter system set remote\_listener='jay-racscan:1521' sid='*';

10、Private IP

由于很少会遇到修改 Private IP 的需求,所以放在最后

root 用户查看并修改共享盘网络配置

注意: 由于我们这里修改 IP 地址并没有涉及到网关的变化,属于同网段 IP 修改,所以不需要进行修改。如果是跨网段修改为

10.10.0.0,则可以参照以下进行操作

/u01/app/19.3.0/grid/bin/oifcfg delif -global ens34

/u01/app/19.3.0/grid/bin/oifcfg setif -global ens34/10.10.0.0:public

所有节点查看验证修改成功

[root@jay-r1 ~]# /u01/app/19.3.0/grid/bin/oifcfg getif

[grid@jay-r1:/home/grid]$/u01/app/19.3.0/grid/bin/oifcfg getif

最后,重启数据库,集群,主机,验证修改是否成功:

重启后集群状态正常:


墨天轮从乐知乐享的数据库技术社区蓄势出发,全面升级,提供多类型数据库管理服务。墨天轮数据库管理服务旨在为用户构建信赖可托付的数据库环境,并为数据库厂商提供中立的生态支持。

服务官网:https://www.modb.pro/service


墨天轮
33 声望18 粉丝