10G RAC数据库因业务需要,进行IP切换,切换IP包括双节点主机IP和VIP
调整前对应 ip 表
主机名 |
类型 |
IP 地址 |
网卡端口 |
hostname1 |
public ip |
30.30.30.51 |
en0 |
|
vip |
30.30.30.53 |
en0 |
hostname2 |
public ip |
30.30.30.52 |
en0 |
|
vip |
30.30.30.54 |
en0 |
调整后对应IP列表
主机名 |
类型 |
IP 地址 |
网卡端口 |
hostname1 |
public ip |
11.99.100.129 |
en0 |
|
vip |
11.99.100.131 |
en0 |
hostname2 |
public ip |
11.99.100.130 |
en0 |
|
vip |
11.99.100.132 |
en0 |
二.操作流程解析
操作数 |
操作过程 |
生产影响 |
回退措施 |
1. |
停止应用,停止数据库,停止监听,停CRS |
在线操作,数据库停止 |
重新启动实例 |
2. |
备份操作,备份包括/etc/hosts ocr 和vote盘,记录local_listener信息。以方便更改失败后回退操作 |
业务已停止操作 |
无 |
3 |
修改主机地址 |
业务已停止操作 |
修改回原来ip |
4 |
检查/etc/hosts |
||
4. |
修改双节点public IP |
业务已停止操作 |
更改失败可还原备份中的ocr信息 |
5. |
修改VIP |
业务已停止操作 |
更改失败可还原备份中的ocr信息 |
6. |
Local_listener 参数检查并修改 |
存在风险,需要做备份,可对ocr和vote做dd备份 |
当CRS切换失败,马上切回原ocr和vote盘 |
7. |
检查监听文件配置是否正常 |
三.操作过程
3.1停止数据库,监听,crs 备份crs
#srvctl stop database –d XXXX –o immediate;
#srvctl stop listener –n hostname1
#crsctl stop crs (双节点停止crs)
对ocr信息进行export备份
# ocrconfig -export /XXX/xxx.dmp
备份voting disk
找到voting disk的存储地:
crsctl query css votedisk
备份采用dd if=/dev/oradatavg/ rnbb_ocr
of=voting.bak bs=1024k
也可对ocr盘进行dd备份
备份注意点:
检查VG是否具有4K偏移量
3.2 修改/etc/hosts
双节点修改/etc/hosts
修改前先对双节点的/etc/hosts进行备份
#cp /etc/hosts /etc/hosts_20120528(双节点操作)
修改/etc/hosts 修改public IP和VIP 地址(双节点操作)
3.3 修改双节点public IP
主机层面修改IP:(双节点进行)
用 smitty 命令修改物理
ip smitty tcpip
选择public IP所在的网卡
修改IP为11.99.100.129
二节点同样操作修改IP为11.99.100.130
此处需注意网关修改,如果网关修改不正确会导致接下来的VIP配置后无法启动
两边启动CRS进行数据库层面修改public IP
#crsctl start(双节点操作)
在其中一个节点上进行ocr中public
IP信息修改
首先查看当前数据库public IP设置:
# oifcfg getif
修改public IP
#oifcfg delif -global en0 (此处假设en0为public IP所在的网卡)
#oifcfg setif -global en0/11.99.100.0:public(修改IP到对应新IP的网段)
两边节点确认
#oifcfg getif
3.4 修改双节点VIP
查看数据库是否启动状态,如果启动,关闭数据库:
srvctl stop database -d XXX -o immediate(XXX为对应数据库名)
检查VIP设置:
#srvctl config vip -n hostname1
#srvctl config vip -n hostname2
停止 vip 服务和修改 vip
#srvctl stop listener -n hostname1
#srvctl stop listener -n hostname2
#srvctl stop vip -n hostname1
#srvctl stop vip -n hostname2
修改VIP
#srvctl modify nodeapps -n hostname1 -A 11.99.100.131/255.255.255.0/en0 (此处具体配置应现场环境而定)
#srvctl modify nodeapps -n hostname2 -A 11.99.100.132/255.255.255.0/en0 (此处具体配置应现场环境而定)
确认是否修改成功
#srvctl config vip -n hostname1
#srvctl config vip -n hostname2
启动 vip 服务,监听,数据库
#srvctl start vip -n hostname1
#srvctl start vip -n XXX hostname2
修改监听配置文件
#srvctl start listener -n XXX hostname1
#srvctl start listener -n XXX hostname2
#srvctl start database –d XXXX
3.5两边节点修改local_listener 参数
双节点操作:
Show parameter local_listener
通过
alter system
set
local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=11.99.100.131
)(PORT=1521))))'
scope=both sid='xxx1';
双节点修改local_listener 注意此处的监听端口,实例名 IP地址为VIP
四.回退方案
如果更改IP失败,可通过前期所做的回退措施进行回退
还原备份的/etc/hosts :
#mv /etc/hosts /etc/hots.bak
#mv /etc/hosts_20120528 /etc/hosts
通过dd ocr盘和vote盘到原位置:
ocr通过import原先的备份:
# ocrconfig -import /XXX/xxx.dmp
Vote盘:
dd 还原:
dd if= voting.bak of=/dev/oradatavg/ rnbb_ocr bs=1024k
重新启动crs 数据库 监听等
------------------------------------------------------------------------------------
原博客地址:http://blog.itpub.net/23732248/
原作者:应以峰 (frank-ying)
-------------------------------------------------------------------------------------