欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle RAC 修改 IP 地址

程序员文章站 2022-06-08 19:35:01
...

Oracle RAC 修改 IP 地址 实验对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 +AS

Oracle RAC 修改 IP 地址

实验对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@node1 bin]# pwd

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

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

Name Type Target State Host

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

ora....C1.inst application ONLINE ONLINE node1

ora....C2.inst application ONLINE ONLINE node2

ora.MYRAC.db application ONLINE ONLINE node2

ora....SM1.asm application ONLINE ONLINE node1

ora....E1.lsnr application ONLINE ONLINE node1

ora....E1.lsnr application ONLINE OFFLINE

ora.node1.gsd application ONLINE ONLINE node1

ora.node1.ons application ONLINE ONLINE node1

ora.node1.vip application ONLINE ONLINE node1

ora....SM2.asm application ONLINE ONLINE node2

ora....E2.lsnr application ONLINE ONLINE node2

ora....E2.lsnr application ONLINE OFFLINE

ora.node2.gsd application ONLINE ONLINE node2

ora.node2.ons application ONLINE ONLINE node2

ora.node2.vip application ONLINE ONLINE node2

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

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

[root@node1 bin]# ./srvctl stop nodeapps -n node2

1.5 关闭crs后台进程, 在操作系统一级中止运行的crs后台进程, 必须在所有节点上运行.
[root@node1 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@node2 ~]# /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@node1 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 node1

10.85.10.221 node2

192.168.1.219 node1-priv

192.168.1.221 node2-priv

10.85.10.222 node1-vip

10.85.10.223 node2-vip

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

[root@node1 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@node2 ~]# 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@node1 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@node2 ~]# 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@node1 ~]# service network restart

[root@node2 ~]# service network restart

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

Startup will be queued to init within 90 seconds.

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

Startup will be queued to init within 90 seconds.


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

[root@node1 bin]# ./srvctl stop asm -n node2
[root@node1 bin]# ./srvctl stop nodeapps -n node1

[root@node1 bin]# ./srvctl stop nodeapps -n node2

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

Name Type Target State Host

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

ora.raw.db application OFFLINE OFFLINE

ora.raw.dmm.cs application OFFLINE OFFLINE

ora....aw2.srv application OFFLINE OFFLINE

ora....w1.inst application OFFLINE OFFLINE

ora....w2.inst application OFFLINE OFFLINE

ora....SM1.asm application OFFLINE OFFLINE

ora....W1.lsnr application OFFLINE OFFLINE

ora.node1.gsd application OFFLINE OFFLINE

ora.node1.ons application OFFLINE OFFLINE

ora.node1.vip application OFFLINE OFFLINE

ora....SM2.asm application OFFLINE OFFLINE

ora....W2.lsnr application OFFLINE OFFLINE

ora.node2.gsd application OFFLINE OFFLINE

ora.node2.ons application OFFLINE OFFLINE

ora.node2.vip application OFFLINE OFFLINE

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

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

-- 查看当前配置:

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

eth0 10.85.10.0 global public

eth1 192.168.1.0 global cluster_interconnect


-- 删除当前配置

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

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

[root@node1 bin]# ./oifcfg getif

-- 重新添加

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

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

[root@node1 bin]# ./oifcfg getif

eth0 10.85.10.0 global public

eth1 192.168.1.0 global cluster_interconnect

[root@racnode2 bin]# ./oifcfg iflist

eth0 192.168.86.0

eth1 192.168.0.0

eth2 192.168.200.0

eth3 192.168.200.0

eth4 192.168.200.0

eth5 192.168.200.0

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

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

3.3 修改VIP

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

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

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

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

# listener.ora.node1 Network Configuration File:

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

# Generated by Oracle configuration tools.

LISTENER_NODE1 =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = node1-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@node1 bin]# ./srvctl start nodeapps -n node1

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

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

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

[root@node1 bin]# ./srvctl start instance -d MYRAC -i node1

[root@node1 bin]# ./srvctl start instance -d MYARC -i node2

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

Name Type Target State Host

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

ora....C1.inst application ONLINE ONLINE node1

ora....C2.inst application ONLINE ONLINE node2

ora.MYRAC.db application ONLINE ONLINE node2

ora....SM1.asm application ONLINE ONLINE node1

ora....E1.lsnr application ONLINE ONLINE node1

ora....E1.lsnr application ONLINE OFFLINE

ora.node1.gsd application ONLINE ONLINE node1

ora.node1.ons application ONLINE ONLINE node1

ora.node1.vip application ONLINE ONLINE node1

ora....SM2.asm application ONLINE ONLINE node2

ora....E2.lsnr application ONLINE ONLINE node2

ora....E2.lsnr application ONLINE OFFLINE

ora.node2.gsd application ONLINE ONLINE node2

ora.node2.ons application ONLINE ONLINE node2

ora.node2.vip application ONLINE ONLINE node2