oracle 11g RAC 修改 IP

oracle 11g RAC集群IP修改步骤:

1、操作系统:

CentOS 7.4

原IP信息:

#public IP

172.17.2.211   jq-hxdbt-211

172.17.2.212   jq-hxdbt-212

#private IP

172.17.5.211   jq-hxdbt-211-priv

172.17.5.212   jq-hxdbt-212-priv

#virtual IP:

172.17.2.213   jq-hxdbt-211-vip

172.17.2.214   jq-hxdbt-212-vip

#scan ip

172.17.2.215  hxdbscan

修改后:

#public IP

172.17.6.11   jq-hxdbt-11

172.17.6.12   jq-hxdbt-12

#private IP

172.17.7.213   jq-hxdbt-11-priv

172.17.7.214   jq-hxdbt-12-priv

#virtual IP:

172.17.6.13   jq-hxdbt-11-vip

172.17.6.14   jq-hxdbt-12-vip

#scan ip

172.17.6.15  hxdbscan

1、正常关闭数据库、监听和集群crs

这里先正常immediate关闭数据库,然后关闭监听,最后关闭两个节点的crs,这样再次启动crs时,就不会自动启动监听和数据库了。

节点1 grid执行即可。

[grid@jq-hxdbt-211 ~]$ srvctl stop database -d crmpos -o immediate

[grid@jq-hxdbt-211 ~]$ srvctl stop listener

[grid@jq-hxdbt-211 ~]$ which crsctl

/u01/app/11.2.0/grid/bin/crsctl

两个节点root都执行:

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs

2.修改/etc/hosts配置文件

先备份原来的/etc/hosts文件为/etc/hosts.bak

[root@jq-hxdbt-211 ~]# cp /etc/hosts /etc/hosts.bak

[root@jq-hxdbt-212 ~]# cp /etc/hosts /etc/hosts.bak

然后再vi修改/etc/hosts文件:

将public ip、vip、scan vip修改为如下值:两个节点都改。

#public IP

172.17.6.11   jq-hxdbt-211

172.17.6.12   jq-hxdbt-212

#virtual IP:

172.17.6.13   jq-hxdbt-211-vip

172.17.6.14   jq-hxdbt-212-vip

#scan ip

172.17.6.15  hxdbscan

注意:其他内容不变。关于private ip,等后面单独修改private ip。

----------------

主机同学修改操作系统公有IP。修改网卡配置并重启。

-----------------

两个节点启动crscrsctl start crs

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

注意:这里如果是按照上面关闭crs的操作,正常数据库和监听是没有启动的,对应target和state都应该是offline。否则,得手工再关闭数据库和监听。

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

CRS-4123: Oracle High Availability Services has been started.

crsctl stat res -t 查看状态

开始修改IP

  1. 修改Public IP

查看当前设定,两个节点root用户执行,

1节点执行

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif

eth0  172.17.2.0  global  public

eth1  172.17.5.0  global  cluster_interconnect

删除旧值并设定新值

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg delif -global eth0

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg setif -global eth0/172.17.6.0:public

       --查看验证修改成功:

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif

eth1  172.17.5.0  global  cluster_interconnect

eth0  172.17.6.0  global  public

二节点执行

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/oifcfg delif -global eth0

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/oifcfg setif -global eth0/172.17.6.0:public

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif

eth1  172.17.5.0  global  cluster_interconnect

eth0  172.17.6.0  global  public

  1. 修改VIP
    需要停止数据库、监听和VIP,如果按照之前操作,目前数据库和监听已经是停止状态。只需要停止vip即可。grid用户两节点执行即可。

[grid@jq-hxdbt-211 ~]$ srvctl stop vip -n jq-hxdbt-211

[grid@jq-hxdbt-212 ~]$ srvctl stop vip -n jq-hxdbt-212

查看状态

[grid@jq-hxdbt-211 ~]$ olsnodes -s

jq-hxdbt-211    Active

jq-hxdbt-212    Active

[grid@jq-hxdbt-211 ~]$ srvctl config vip -n jq-hxdbt-211

VIP exists.:jq-hxdbt-211

VIP exists.: /jq-hxdbt-211-vip/172.17.6.13/255.255.255.0/eth0

[grid@jq-hxdbt-211 ~]$ srvctl config vip -n jq-hxdbt-212

VIP exists.:jq-hxdbt-212

VIP exists.: /jq-hxdbt-212-vip/172.17.6.14/255.255.255.0/eth0

修改VIP设置:root用户执行

/u01/app/11.2.0/grid/bin/srvctl modify nodeapps -n jq-hxdbt-211 -A 172.17.6.13/255.255.255.0/eth0

/u01/app/11.2.0/grid/bin/srvctl modify nodeapps -n jq-hxdbt-212 -A 172.17.6.14/255.255.255.0/eth0

再次验证修改结果:

[grid@jq-hxdbt-211 ~]$ srvctl config vip -n jq-hxdbt-211

VIP exists.:jq-hxdbt-211

VIP exists.: /jq-hxdbt-211-vip/172.17.6.13/255.255.255.0/eth0

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/srvctl config vip -n jq-hxdbt-212

VIP exists.:jq-hxdbt-212

VIP exists.: /jq-hxdbt-212-vip/172.17.6.14/255.255.255.0/eth0

启动vip:grid用户执行:

[grid@jq-hxdbt-211 ~]$ srvctl start vip -n jq-hxdbt-211

[grid@jq-hxdbt-211 ~]$ srvctl start vip -n jq-hxdbt-212

Crsctl stat res -t检查状态已online

ora.jq-hxdbt-211.vip

             ONLINE  ONLINE       jq-hxdbt-211                                

ora.jq-hxdbt-212.vip

             ONLINE  ONLINE       jq-hxdbt-212

启动监听:

[grid@jq-hxdbt-211 ~]$ srvctl start listener

状态:online

ora.LISTENER.lsnr

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212

启动数据库:

[grid@jq-hxdbt-211 ~]$ srvctl start database -d crmpos

查看状态:

ora.crmpos.db

              ONLINE  ONLINE       jq-hxdbt-211             Open               

              ONLINE  ONLINE       jq-hxdbt-212             Open

确认local_listener信息:oralce用户登录数据库

SQL> show parameter listen

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

listener_networks                    string

local_listener                       string      (DESCRIPTION=(ADDRESS_LIST=(AD

                                                 DRESS=(PROTOCOL=TCP)(HOST=172.

                                                 17.2.213)(PORT=1521))))

remote_listener                      string      hxdbscan:1521

地址还是原来的172.17.2.213。修改为新的IP172.17.6.13。

alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.6.13)(PORT=1521))' scope=both sid='crmpos1';

2节点修改为172.17.6.14

alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.6.14)(PORT=1521))' scope=both sid='crmpos2';

3 修改SCAN IP

查看SCAN VIP当前设置:grid用户

[grid@jq-hxdbt-211 ~]$ srvctl config scan

SCAN name: hxdbscan, Network: 1/172.17.6.0/255.255.255.0/eth0

SCAN VIP name: scan1, IP: /172.17.2.215/172.17.2.215

停止scan_listener和scan资源:

[grid@jq-hxdbt-211 ~]$ srvctl stop scan_listener

[grid@jq-hxdbt-211 ~]$ srvctl stop scan

[grid@jq-hxdbt-211 ~]$ srvctl status scan_listener

SCAN Listener LISTENER_SCAN1 is enabled

SCAN listener LISTENER_SCAN1 is not running

[grid@jq-hxdbt-211 ~]$ srvctl status scan

SCAN VIP scan1 is enabled

SCAN VIP scan1 is not running

[grid@jq-hxdbt-211 ~]$

使用root用户修改SCAN IP:节点1执行就可。

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/srvctl modify scan -n hxdbscan

修改并启动,grid用户执行:

[grid@jq-hxdbt-211 ~]$ srvctl modify scan_listener -u

[grid@jq-hxdbt-211 ~]$ srvctl start scan_listener

Crsctl stat res -t查看scan_listener和scan都已经启动:

ora.LISTENER_SCAN1.lsnr

      1        ONLINE  ONLINE       jq-hxdbt-211

ora.scan1.vip

      1        ONLINE  ONLINE       jq-hxdbt-211

再次确认信息修改成功:

[grid@jq-hxdbt-211 ~]$ srvctl config scan

SCAN name: hxdbscan, Network: 1/172.17.6.0/255.255.255.0/eth0

SCAN VIP name: scan1, IP: /hxdbscan/172.17.6.15

[grid@jq-hxdbt-211 ~]$ srvctl config scan_listener

SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521

查看整个集群状态正常:

[grid@jq-hxdbt-211 ~]$ crsctl stat res -t

--------------------------------------------------------------------------------

NAME           TARGET  STATE        SERVER                   STATE_DETAILS      

--------------------------------------------------------------------------------

Local Resources

--------------------------------------------------------------------------------

ora.DATA.dg

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.FRA.dg

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.LISTENER.lsnr

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.OCR.dg

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.asm

               ONLINE  ONLINE       jq-hxdbt-211             Started            

               ONLINE  ONLINE       jq-hxdbt-212             Started            

ora.eons

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.gsd

               OFFLINE OFFLINE      jq-hxdbt-211                                

               OFFLINE OFFLINE      jq-hxdbt-212                                

ora.net1.network

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

ora.ons

               ONLINE  ONLINE       jq-hxdbt-211                                

               ONLINE  ONLINE       jq-hxdbt-212                                

--------------------------------------------------------------------------------

Cluster Resources

--------------------------------------------------------------------------------

ora.LISTENER_SCAN1.lsnr

      1        ONLINE  ONLINE       jq-hxdbt-211                                

ora.crmpos.db

      1        ONLINE  ONLINE       jq-hxdbt-211             Open               

      2        ONLINE  ONLINE       jq-hxdbt-212             Open               

ora.jq-hxdbt-211.vip

      1        ONLINE  ONLINE       jq-hxdbt-211                                

ora.jq-hxdbt-212.vip

      1        ONLINE  ONLINE       jq-hxdbt-212                                

ora.oc4j

      1        OFFLINE OFFLINE                                                  

ora.scan1.vip

      1        ONLINE  ONLINE       jq-hxdbt-211  

全部正常。

至此,修改Oracle 11g RAC的public IP、VIP、SCAN VIP就算完成了。通过plsql使用新的IP进行连接测试。6.11/12/13/14全部登录成功。

修改Private IP

因为Private IP不提供外部服务,可以不修改,这里仅进行测试一下。正式迁移时可规划好IP,不进行修改。

备份并确认CRS集群正常
从Oracle 11.2 GI开始,私有网络配置不仅仅存在ocr中,还存在gpnp profile中,所以首先需要备份profile.xml。

--节点1备份:grid用户执行

[grid@jq-hxdbt-211 peer]$ cd /u01/app/11.2.0/grid/gpnp//profiles/peer/

[grid@jq-hxdbt-211 peer]$ cp  profile.xml profile.xml.bk

--节点2备份:

[grid@jq-hxdbt-212 peer]$ cd /u01/app/11.2.0/grid/gpnp//profiles/peer/

[grid@jq-hxdbt-212 peer]$ cp  profile.xml profile.xml.bk

确认CRS集群在各节点启动:

[grid@jq-hxdbt-211 peer]$ olsnodes -s

jq-hxdbt-211    Active

jq-hxdbt-212    Active

增加一个新的私网信息:root用户执行:

查看:

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif

eth1  172.17.5.0  global  cluster_interconnect

eth0  172.17.6.0  global  public

增加命令: 172.17.7.0,用以下命令:

/u01/app/11.2.0/grid/bin/oifcfg setif -global eth1/172.17.7.0:cluster_interconnect

再次查看:

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif

eth1  172.17.5.0  global  cluster_interconnect

eth0  172.17.6.0  global  public

eth1  172.17.7.0  global  cluster_interconnect

[root@jq-hxdbt-211 ~]#

Root用户在两个节点关闭并禁用集群

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl disable crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl disable crs

-----------------主机同学OS层修改私有网卡地址--

ifconfig -a

ping

修改私有网卡IP并重启:

vi /etc/hosts 修改private ip部分为:

#private IP

172.17.7.213   jq-hxdbt-211-priv

172.17.7.214   jq-hxdbt-212-priv

root用户在所有节点启用并启动集群

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl enable crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl enable crs

[root@jq-hxdbt-211 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

[root@jq-hxdbt-212 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs

新增172.17.7.0,则删除原来的172.17.5.0

root执行
/u01/app/11.2.0/grid/bin/oifcfg delif -global eth1/172.17.5.0:cluster_interconnect
这里因为还是用的之前的网段,不需要操作。

验证集群状态以及登录数据库

Crsctl stat res -t

Plsql登录6.11/12/13/14/15

均正常,

至此,所有IP修改完毕。

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值