>>背景:
数据库割接时需要修改准生产的public IP 和VIP(期间会做与生产库的网络隔离),为了保证期间DSG正常同步,需修改准生产Private IP和生产IP网段相同,已供DSG同步使用 。
现准生产Private IP :192.168.1.138 /139
需要调整为:192.168.140.115/116 192.168.140.138/139
参考文档:
How to Modify Private Network Information in Oracle Clusterware(文档 ID 283684.1)
1、检查、保留原信息
1.1、 $ cat /etc/hosts
132.78.140.138 cnzddb1
132.78.140.140 cnzddb1-vip
192.168.1.138 cnzddb1-priv
132.78.140.139 cnzddb2
132.78.140.141 cnzddb2-vip
192.168.1.139 cnzddb2-priv
132.78.140.142 cnzddb-cluster-scan
1.2、 心跳网卡信息
grid@cnzddb2:/home/grid> $GRID_HOME/bin/oifcfg getif
en6 132.78.140.128 global public
en7 192.168.1.128 global cluster_interconnect
1.3、 IP网卡信息:
admin1@cnzddb1:/home/admin1 >ifconfig -a
en6: flags=1e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
inet 132.78.140.138 netmask 0xffffffe0 broadcast 132.78.140.159
inet 132.78.140.140 netmask 0xffffffe0 broadcast 132.78.140.159
inet 132.78.140.142 netmask 0xffffffe0 broadcast 132.78.140.159
tcp_sendspace 131072 tcp_recvspace 65536 rfc1323 0
en7: flags=1e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
inet 192.168.1.138 netmask 0xffffffe0 broadcast 192.168.1.159
inet 169.254.165.70 netmask 0xffff0000 broadcast 169.254.255.255
tcp_sendspace 131072 tcp_recvspace 65536 rfc1323 0
lo0: flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
inet6 ::1%1/0
tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1
admin1@cnzddb2:/home/admin1 >ifconfig -a
en6: flags=1e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
inet 132.78.140.139 netmask 0xffffffe0 broadcast 132.78.140.159
inet 132.78.140.141 netmask 0xffffffe0 broadcast 132.78.140.159
tcp_sendspace 131072 tcp_recvspace 65536 rfc1323 0
en7: flags=1e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
inet 192.168.1.139 netmask 0xffffffe0 broadcast 192.168.1.159
inet 169.254.98.11 netmask 0xffff0000 broadcast 169.254.255.255
tcp_sendspace 131072 tcp_recvspace 65536 rfc1323 0
lo0: flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
inet6 ::1%1/0
tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1
2、停数据库 && 修改OCR私有网卡信息
2.1、 停库
$ srvctl stop database -d cnzddb
2.2、 修改OCR私有网卡信息:
#grid用户
$GRID_HOME/bin/oifcfg setif -global en7/192.168.140.96:cluster_interconnect ##需要换算IP数据哪个段中
$GRID_HOME/bin/oifcfg delif -global en7/192.168.1.128
3、操作系统层面修改(以root用户):
修改网卡上的IP地址为新地址
修改/etc/hosts,全部对应新地址:
##$ cat /etc/hosts
132.78.140.138 cnzddb1
132.78.140.140 cnzddb1-vip
192.168.140.115 cnzddb1-priv
132.78.140.139 cnzddb2
132.78.140.141 cnzddb2-vip
192.168.140.116 cnzddb2-priv
132.78.140.142 cnzddb-cluster-scan
4、重启crs && 数据库
# crsctl stop crs
# crsctl disable crs
# crsctl enable crs
# crsctl start crs
$ srvctl start database -d cnzddb
注:2.2步的网段换算方法
--换算举例:(115/116属于96段!)
netmask 0xffffff e0
1 - e0 = 1- 1110 0000 = 0001 1111 = 31
即每32个地址为一个段,0~31,32~63,64~95,96~127,128~159 。。。
所以IP地址115/116 属于 96~127,即96段:
$GRID_HOME/bin/oifcfg setif -global en7/192.168.140.96:cluster_interconnect ##需要换算IP数据哪个段中
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27126919/viewspace-2123956/
,如需转载,请注明出处,否则将追究法律责任。