Oracle RAC 修改 IP 地址

RAC修改IP这个操作本身也只有几步操作,但是它涉及到OCR。所以要格外小心。一般来说,如果不是必须要修改的话,尽量不要去修改OCR的东西。稳定第一。

在做之前,要手动的OCR进行一个备份,这样即使修改失败,也能还原回来。OCR的备份,参考Blog:

Oracle 10g RAC OCR和VotingDisk的备份与恢复

http://blog.csdn.net/xujinyang/article/details/6829593


另外,Public/Private对应的的主机名不能更改,如果确实需要更改主机名,需要重新安装CRS。


实验对IP地址做如下修改:

Public IP 10.85.10.119/121-- >10.85.10.219/221

Privite IP 192.168.1.119/121-- >192.168.1.219/221

Virtual IP 10.85.10.122/123-- >10.85.10.222/223

实验平台:redhat 4.7 + ORACLE 10G + raw +ASM

一. 停止oracle相关的所有进程,包括数据库, asm, node application, crs本身.

1.1查看当前系统上crs运行的状态
[root@raw1 bin]# pwd

/u01/app/oracle/product/crs/bin

[root@raw1 bin]# ./crs_stat -t

NameTypeTargetStateHost

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

ora.raw.dbapplicationOFFLINEOFFLINE

ora.raw.dmm.cs applicationOFFLINEOFFLINE

ora....aw2.srv applicationOFFLINEOFFLINE

ora....w1.inst applicationOFFLINEOFFLINE

ora....w2.inst applicationOFFLINEOFFLINE

ora....SM1.asm applicationOFFLINEOFFLINE

ora....W1.lsnr applicationOFFLINEOFFLINE

ora.raw1.gsdapplicationOFFLINEOFFLINE

ora.raw1.onsapplicationOFFLINEOFFLINE

ora.raw1.vipapplicationOFFLINEOFFLINE

ora....SM2.asm applicationOFFLINEOFFLINE

ora....W2.lsnr applicationOFFLINEOFFLINE

ora.raw2.gsdapplicationOFFLINEOFFLINE

ora.raw2.onsapplicationOFFLINEOFFLINE

ora.raw2.vipapplicationOFFLINEOFFLINE

1.2关闭数据库
  [root@raw1 bin]# ./srvctl stop database -d raw
1.3关闭asm实例
[root@raw1 bin]# ./srvctl stop asm -n raw1

[root@raw1 bin]# ./srvctl stop asm -n raw2
1.4关闭其他应用程序
[root@raw1 bin]# ./srvctl stop nodeapps -n raw1

[root@raw1 bin]# ./srvctl stop nodeapps -n raw2

1.5关闭crs后台进程,在操作系统一级中止运行的crs后台进程,必须在所有节点上运行.
[root@raw1 bin]# /etc/init.d/init.crs stop

Shutting down Oracle Cluster Ready Services (CRS):

Stopping resources.

Successfully stopped CRS resources

Stopping CSSD.

Shutting down CSS daemon.

Shutdown request successfully issued.

Shutdown has begun. The daemons should exit soon.


[root@raw2 ~]# /etc/init.d/init.crs stop

Shutting down Oracle Cluster Ready Services (CRS):

Stopping resources.

Successfully stopped CRS resources

Stopping CSSD.

Shutting down CSS daemon.

Shutdown request successfully issued.

Shutdown has begun. The daemons should exit soon.

二。 修改操作系统的ip设置

2.1修改/etc/hosts文件。 保持2个节点的一致

[root@raw1 bin]# vi /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost

10.85.10.219 raw1

10.85.10.221 raw2

192.168.1.219 raw1-priv

192.168.1.221 raw2-priv

10.85.10.222 raw1-vip

10.85.10.223 raw2-vip

2.2在两个节点上分别修改eth0和eth1地址:

[root@raw1 etc]# more /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

IPADDR=10.85.10.219

NETMASK=255.255.255.0

ONBOOT=yes

GATEWAY=10.85.10.253

[root@raw2 ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

IPADDR=10.85.10.221

NETMASK=255.255.255.0

ONBOOT=yes

GATEWAY=10.85.10.253

[root@raw1 etc]# more /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

BOOTPROTO=static

IPADDR=192.168.1.219

NETMASK=255.255.255.0

ONBOOT=yes

GATEWAY=192.168.1.1

[root@raw2 ~]# more /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

BOOTPROTO=static

IPADDR=192.168.1.221

NETMASK=255.255.255.0

ONBOOT=yes

GATEWAY=192.168.1.1

2.3在两个节点上分别重启网络服务,是修改的IP生效。

[root@raw1 ~]# service network restart

[root@raw2 ~]# service network restart


三. 启动crs,设置oracle中ip地址相关的设置.
  3.1在两个节点启动crs,并关闭随crs启动的应用程序
[root@raw1 ~]#/etc/init.d/init.crs start

Startup will be queued to init within 90 seconds.

[root@raw2 ~]#/etc/init.d/init.crs start

Startup will be queued to init within 90 seconds.


由于oracle所有应用设置为自动启动,所以在crs启动时会试图启动所有的服务,但是在对oracle相关的ip地址进行设置时需要crs处于运行状态.但是数据库, asm和node application处于停止状态,在一个节点执行以下命令:
  [root@raw1 bin]# ./srvctl stop database -d raw
[root@raw1 bin]# ./srvctl stop asm -n raw1

[root@raw1 bin]# ./srvctl stop asm -n raw2
[root@raw1 bin]# ./srvctl stop nodeapps -n raw1

[root@raw1 bin]# ./srvctl stop nodeapps -n raw2

[root@raw1 bin]# ./crs_stat -t

NameTypeTargetStateHost

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

ora.raw.dbapplicationOFFLINEOFFLINE

ora.raw.dmm.cs applicationOFFLINEOFFLINE

ora....aw2.srv applicationOFFLINEOFFLINE

ora....w1.inst applicationOFFLINEOFFLINE

ora....w2.inst applicationOFFLINEOFFLINE

ora....SM1.asm applicationOFFLINEOFFLINE

ora....W1.lsnr applicationOFFLINEOFFLINE

ora.raw1.gsdapplicationOFFLINEOFFLINE

ora.raw1.onsapplicationOFFLINEOFFLINE

ora.raw1.vipapplicationOFFLINEOFFLINE

ora....SM2.asm applicationOFFLINEOFFLINE

ora....W2.lsnr applicationOFFLINEOFFLINE

ora.raw2.gsdapplicationOFFLINEOFFLINE

ora.raw2.onsapplicationOFFLINEOFFLINE

ora.raw2.vipapplicationOFFLINEOFFLINE

3.2使用oifcfg修改网卡设置, oifconfig可以用来设置和查看网卡使用的方式.

注: 如果修改的网段相同,可以不做这一步。

--查看当前配置:

[root@raw1 bin]# ./oifcfg getif -global

eth010.85.10.0globalpublic

eth1192.168.1.0globalcluster_interconnect


--删除当前配置

[root@raw1 bin]# ./oifcfg delif -global eth0

[root@raw1 bin]# ./oifcfg delif -global eth1

[root@raw1 bin]# ./oifcfg getif

--重新添加

[root@raw1 bin]# ./oifcfg setif -global eth0/10.85.10.0:public

[root@raw1 bin]# ./oifcfg setif -global eth1/192.168.1.0:cluster_interconnect

[root@raw1 bin]#./oifcfg getif

eth010.85.10.0globalpublic

eth1192.168.1.0globalcluster_interconnect


[root@racnode2 bin]# ./oifcfg iflist

eth0192.168.86.0

eth1192.168.0.0

eth2192.168.200.0

eth3192.168.200.0

eth4192.168.200.0

eth5192.168.200.0

注意:这里IP地址最一个为0.代表的是一个网段。修改的时候要切记。否在在启动OCR时会报如下错误:

[ CRSOCR][4054413904] OCR context init failure. Error: PROC-44:网络地址和网络接口操作中出错网络地址和网络接口操作错误[7]


3.3修改VIP

[root@raw1 bin]# ./srvctl modify nodeapps -n raw1 -A 10.85.10.222/255.255.255.0/eth0

[root@raw1 bin]# ./srvctl modify nodeapps -n raw2 -A 10.85.10.223/255.255.255.0/eth0

3.4设置listener.ora和tnsnames.ora,检查这些文件中是否有指定原来ip的地方,修改为更改后的ip地址。

[root@raw1 bin]# vi/u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora

# listener.ora.raw1 Network Configuration File:

/u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora.raw1

# Generated by Oracle configuration tools.

LISTENER_RAW1 =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = raw1-vip)(PORT = 1521)(IP = FIRST))

(ADDRESS = (PROTOCOL = TCP)(HOST =10.85.10.219)(PORT = 1521)(IP = FIRST))

)

)

注意:如果你使用了ocfs,修改ocfs配置文件(/etc/ocfs/cluster.conf),验证修改后是否可用。

3.5启动node applications, asm,数据库

[root@raw1 bin]# ./srvctl start nodeapps -n raw1

[root@raw1 bin]# ./srvctl start nodeapps -n raw2

[root@raw1 bin]# ./srvctl start asm -n raw1

[root@raw1 bin]# ./srvctl start asm -n raw2

[root@raw1 bin]# ./srvctl start instance -d raw -i raw1

[root@raw1 bin]# ./srvctl start instance -d raw -i raw2

[root@raw1 bin]# ./crs_stat -t

NameTypeTargetStateHost

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

ora.raw.dbapplicationONLINEONLINEraw2

ora.raw.dmm.cs applicationONLINEONLINEraw2

ora....aw2.srv applicationONLINEONLINEraw2

ora....w1.inst applicationONLINEONLINEraw1

ora....w2.inst applicationONLINEONLINEraw2

ora....SM1.asm applicationONLINEONLINEraw1

ora....W1.lsnr applicationONLINEONLINEraw1

ora.raw1.gsdapplicationONLINEONLINEraw1

ora.raw1.onsapplicationONLINEONLINEraw1

ora.raw1.vipapplicationONLINEONLINEraw1

ora....SM2.asm applicationONLINEONLINEraw2

ora....W2.lsnr applicationONLINEONLINEraw2

ora.raw2.gsdapplicationONLINEONLINEraw2

ora.raw2.onsapplicationONLINEONLINEraw2

ora.raw2.vipapplicationONLINEONLINEraw2

若启动出现问题,参考我的blog:

Oracle RAC启动与关闭

http://blog.csdn.net/xujinyang/article/details/6829632

3.6确认IP,修改完成。
[root@raw1 bin]# ifconfig

eth0Link encap:EthernetHWaddr 00:0C:29:55:28:FD

inet addr:10.85.10.219Bcast:10.85.10.255Mask:255.255.255.0

... ...

eth0:1Link encap:EthernetHWaddr 00:0C:29:55:28:FD

inet addr:10.85.10.222Bcast:10.85.10.255Mask:255.255.255.0

... ...

eth1Link encap:EthernetHWaddr 00:0C:29:55:28:07

inet addr:192.168.1.219Bcast:192.168.1.255Mask:255.255.255.0

... ...

loLink encap:Local Loopback

inet addr:127.0.0.1Mask:255.0.0.0

[root@raw2 ~]# ifconfig

eth0Link encap:EthernetHWaddr 00:0C:29:2E:28:EE

inet addr:10.85.10.221Bcast:10.85.10.255Mask:255.255.255.0

... ...

eth0:1Link encap:EthernetHWaddr 00:0C:29:2E:28:EE

inet addr:10.85.10.223Bcast:10.85.10.255Mask:255.255.255.0

... ...

eth1Link encap:EthernetHWaddr 00:0C:29:2E:28:F8

inet addr:192.168.1.221Bcast:192.168.1.255Mask:255.255.255.0

... ...

loLink encap:Local Loopback

inet addr:127.0.0.1Mask:255.0.0.0

... ...

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值