首页 > 数据库 > Oracle > 存储节点修改物理IP
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=xxx.xxx.xxx.xxx
NETMASK=255.255.255.0
IPADDR=xxx.xxx.xxx.xxx
BROADCAST=xxx.xxx.xxx.xxx
USERCTL=no
BONDING_OPTS="mode=1 miimon=300 primary=eth2"
service network restart
以下计算节点命令修改root用户的path变量,加入$CRS_HOME/bin,在root用户下执行。
修改信息前查看ocr的备份信息:
ocrconfig -showbackup
srvctl stop database -d orcl
srvctl stop vip –n node1 –f
srvctl stop vip –n node2 –f
srvctl stop vip –n node3 –f
……
srvctl stop scan_listener
srvctl stop scan
确认vip和scan offline:
crsctl status res –t
ifconfig -a
oifcfg delif –global bond0/168.8.4.0
oifcfg setif –global bond0x.xxx.xxx.xxx:public
oifcfg getif
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=xxx.xxx.xxx.xxx
NETMASK=255.255.255.0
IPADDR=xxx.xxx.xxx.xxx
BROADCAST=xxx.xxx.xxx.xxx
USERCTL=no
BONDING_OPTS="mode=1 miimon=300 primary=eth2"
service network restart
ifconfig -a
srvctl config nodeapps -a
crsctl status res -t
ifconfig -a
srvctl modify nodeapps -n node1 -A node1vip/255.255.255.0/bond0
srvctl modify nodeapps -n node2 -A node2vip/255.255.255.0/bond0
srvctl modify nodeapps -n node3 -A node3vip/255.255.255.0/bond0
……
srvctl config nodeapps –a
srvctl config scan
srvctl modify scan –n scan_name
srvctl config scan
srvctl start vip -n node1
……
srvctl start listener -n node1
……
srvctl start database -d orcl
srvctl start scan
srvctl start scan_listener
crsctl status res -t
ifconfig -a
查看数据库local_listener, remote_listener参数是否指向新的vip地址,如有需要,在每个实例进行修改:
oracle用户:
sqlplus / as sysdba
SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521))' sid='orcl1';
grid用户:
sqlplus / as sysasm
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521))))'
sid='+ASM1';
如果添加过静态监听,需要grid用户使用netmgr修改监听地址。
查看tnsnames.ora,listener.ora文件,如果有指定IP地址,进行相应修改。
lsnrctl status
lsnrctl status listener_scan1
测试public ip, vip和scanip的数据库连接正常
重启集群看是否正常
测试IB链路稳定性:
指定IB链路地址,传输500M大小文件,查看传输速率。
A、grid用户执行如下操作
$ srvctl stop database -d orcl -o immediate
$ srvctl stop listener -n node1
$ srvctl stop listener -n node2
B、root用户
cd /grid/app/11.2.0/grid/bin
./crsctl stop crs
可以用ps –ef|grep grid看进程是否完全关闭
修改前先做个备份
cp /etc/hosts /etc/hosts.bak
修改后如下所示:
注意这里私网ip地址暂时先不做修改,修改private ip时再修改
用smitty命令修改物理ip
smitty tcpip
选择eth0
修改ip为 10.76.31.112,网关为10.76.31.1
掩码为 255.255.255.0
用smitty命令修改物理ip
smitty tcpip
选择eth0
修改ip为 10.76.31.114,网关为10.76.31.1
掩码为255.255.255.0
A、root用户停止crs,一边节点做即可(注意)
cd /grid/app/11.2.0/grid/bin
./crsctl start crs
B、root用户检查修改
先用oifcfg getif查看当前设置
./oifcfg getif
en0 192.168.128.0 global public
en2 172.168.128.0 global cluster_interconnect
修改
./oifcfg delif -global en0
./oifcfg setif -global en0/10.76.31.0:public
两边节点确认
./oifcfg getif
en0 10.76.31.0 global public
en2 172.168.128.0 global cluster_interconnect
A、关闭database,grid或者oracle用户操作
root用户下运行以下命令
cd /grid/app/11.2.0/grid/bin
./srvctl stop database -d gdcdc -o immediate
B、检查VIP设置信息(grid用户操作)
用srvctl config vip 检查vip设置
$ srvctl config vip -n p570a
VIP exists.:p570a
VIP exists.: /p570a-vip/192.168.128.12/255.255.255.0/eth0
$ srvctl config vip -n p570b
VIP exists.:p570b
VIP exists.: /p570b-vip/192.168.128.13/255.255.255.0/eth0
C、停止vip 服务和修改vip(grid用户操作)
./srvctl stop listener -n p570a
./srvctl stop listener -n p570b
./srvctl stop vip -n p570a
./srvctl stop vip -n p570b
./srvctl modify nodeapps -n p570a -A 10.76.31.113/255.255.255.0/en0
./srvctl modify nodeapps -n p570b -A 10.76.31.115/255.255.255.0/en0
D、确认是否修改成功
./srvctl config vip -n p570a
VIP exists.:p570a
VIP exists.:/p570a-vip/10.76.31.113/255.255.255.0/en0
./srvctl config vip -n p570b
VIP exists.:p570b
VIP exists.:/p570b-vip/10.76.31.115/255.255.255.0/en0
E、启动vip服务,监听,数据库
./srvctl start vip -n p570a
./srvctl start vip -n p570b
./srvctl start listener -n p570a
./srvctl start listener -n p570b
./srvctl start database –d gdcdc
该部分应该是在修改完VIP之后,重启数据库由oraagent自动注册进去。
Show parameter local_listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string (DESCRIPTION=(ADDRESS_LIST=(AD
DRESS=(PROTOCOL=TCP)(HOST=192.
168.128.12)(PORT=1521))))
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=10.76.31.113)(PORT=1521))))' scope=both sid='gdcdc1';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=10.76.31.115)(PORT=1521))))' scope=both sid='gdcdc2';
1.srvctl config scan 查看当前vip设置
config scan SCAN name: 192.168.128.100, Network: 1/192.168.128.0/255.255.255.0/en0 SCAN VIP name:
scan1, IP: /scan-vip/192.168.128.100
2.用root用户停止scan_listener 和sacn vip
$GRID_HOME/bin/srvctl stop scan_listener
$GRID_HOME/bin/srvctl stop scan
$GRID_HOME/bin/srvctl status scan
SCAN VIP scan1 is enabled SCAN VIP scan1 is not running
$GRID_HOME/bin/srvctl status scan_listener SCAN Listener LISTENER_SCAN1 is enabled SCAN listener
LISTENER_SCAN1 is not running
3.用root用户修改scan vip
$GRID_HOME/bin/srvctl modify scan -n10.76.31.111
4.检查是否修改成功
config scan SCAN name: 10.76.31.111 , Network: 1/10.76.31.0/255.255.255.0/en0 SCAN VIP name: scan1,
IP: /scan-vip/10.76.31.111
5.启动scan和scan_listener
$GRID_HOME/bin/srvctl start scan
$GRID_HOME/bin/srvctl start scan_listener
可以用olsnodes –s 检查集群的状态
./olsnodes -s
P570a Active
P570b Active
修改前设置
./oifcfg getif
en0 10.76.31.0 global public
en2 172.168.128.0 global cluster_interconnect
修改private ip,新网络端口号为en8,如果没有修改端口号,则设置的值还是为en2
./oifcfg setif -global en8/192.76.31.0:cluster_interconnect
./oifcfg delif -global en2
修改后设置
./oifcfg getif
en0 10.76.31.0 global public
en8 192.76.31.0 global cluster_interconnect
./srvctl stop database -d gdcdc -o immedate
./crsctl stop crs
检查是否关闭
ps -ef|grep grid
ps -ef|grep oracle
172.168.128.10 p570a-priv
172.168.128.11 p570b-priv
修改为
192.76.31.113 p570a-priv
192.76.31.115 p570b-priv
用smitty命令修改物理私网ip
smitty tcpip
选择en8
修改ip为 192.76.31.113 掩码为 255.255.255.0
用smitty命令修改物理私网ip
smitty tcpip
选择en8
修改ip为 192.76.31.115 掩码为 255.255.255.0
crsctl start crs
检查资源组状态
crsctl status resource –t
如果都online,则没问题。
4 实施总结
1. 在修改public ip时注意修改对应的正确网关,如果不修改,有可能导致vip服务起不来。
2. 注意检查修改hosts文件,因为改ip后,hosts文件会增加记录。
public ip对应的掩码也要修改正确,
3. 主机名在安装crs时要规划好,一旦装好后,就不能修改,否则要重新安装crs。
4. 11GR2 srvctl 新增 config vip命令
5. 修改private ip的顺序刚好和10gR2相反,10gR2是先关闭crs,然后修改hosts表和物理ip,再启动crs,用oifcfg设置
新私网ip,这点要注意,否则按10gR2修改私网的方法,会导致CRS集群起不来,所以做之前先做好备份。
6. 如果两边节点local_listener参数没修改的话,会导致客户端连接不到数据库报ERROR:ORA-12516: TNS: 监听程序找
不到符合协议堆栈要求的可用处理程序,这是因为scan_listener 认到的还是修改前的vip
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31136666/viewspace-2090394/ ,如需转载,请注明出处,否则将追究法律责任。