1.配置NFS环境
为了能够保证升级出错以后,可以回退到升级前的状态。我们需要把整个Exadata的部分环境做一个备份。我们采用的备份方式是NFS方式。我们找到了一台能够ping通的局域网内网的Linux服务器,把这台服务器将作为NFS的服务器,并且这台服务器上事先已经挂载了1T的空间。
在服务端修改/etc/exports,加上下列内容
/media/_data/ 10.100.82.1(rw)
/media/_data/ 10.100.82.2(rw)
注意:这个IP地址是Exadata映射出来的IP,不是计算节点的物理IP,必须从服务器端/var/log/messages里面可以看到Exadata客户端发起的请求IP,把请求IP配置到/etc/exports才能配置成功。因为客户在不同网段之间访问设置了防火墙,所以还需要通过配置固定端口进行连通。在服务端
修改/etc/sysconfig/nfs,增加如下端口。
MOUNTD_PORT="4002"
STATD_PORT="4003"
LOCKD_TCPPORT="4004"
LOCKD_UDPPORT="4004"
操作系统上的防火墙全部都要关闭。
service iptables off
检查NFS是否配置好。
rpcinfo –p 在服务器端执行,查看端口是否正确.
showmount –e 在服务器端执行能查看到nfs文件系统的信息.
showmount -e 服务端ip地址 在客户端执行 能从客户端查看到nfs文件系统的信息.
在exadata的两个计算节点上mount NFS文件系统。
mount -t nfs -o rw,intr,soft,proto=tcp,nolock 10.194.42.11:/media/_data /root/tar
2.备份现有环境
做完NFS的配置之后,我们就可以用来进行备份Exadata计算节点的操作系统,集群软件、数据库软件及数据库的备份,而我们的存储节点因为可以使用CELL BOOT USB Flash Drive来进行恢复,所以无须备份。
2.1备份计算节点操作系统
[root@gxx2db01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VGExaDb-LVDbSys1
30G 14G 15G 49% /
/dev/sda1 502M 36M 441M 8% /boot
/dev/mapper/VGExaDb-LVDbOra1
99G 55G 39G 59% /u01
tmpfs 81G 26M 81G 1% /dev/shm
/dev/mapper/datavg-lv_data
549G 355G 166G 69% /backup
dbfs-dbfs@dbfs:/ 800G 4.9G 796G 1% /data
10.194.42.11:/media/_data
985G 199M 935G 1% /root/tar
可以看到当前目录已经挂载了1个T空间的NFS容量,我们的操作系统存在着两个LV,一个是/dev/mapper/VGExaDb-LVDbSys1和/dev/mapper/VGExaDb-LVDbOra1,而datavg-lv-data是我们自己划的用于数据库备份的。所以备份操作系统也就是备份/dev/mapper/VGExaDb-LVDbSys1和/dev/mapper/VGExaDb-LVDbOra1这两个LV,我们使用下面的备份方式。
[root@gxx2db01 ~]# lvcreate -L1G -s -n root_snap /dev/VGExaDb/LVDbSys1
Logical volume "root_snap" created
[root@gxx2db01 ~]# e2label /dev/VGExaDb/root_snap DBSYS_SNAP
[root@gxx2db01 ~]# mkdir /root/mnt
[root@gxx2db01 ~]# mount /dev/VGExaDb/root_snap /root/mnt -t ext3
[root@gxx2db01 ~]# lvcreate -L5G -s -n u01_snap /dev/VGExaDb/LVDbOra1
Logical volume "u01_snap" created
[root@gxx2db01 ~]# e2label /dev/VGExaDb/u01_snap DBORA_SNAP
[root@gxx2db01 ~]# mkdir -p /root/mnt/u01
[root@gxx2db01 ~]# mount /dev/VGExaDb/u01_snap /root/mnt/u01 -t ext3
[root@gxx2db01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VGExaDb-LVDbSys1
30G 14G 15G 49% /
/dev/sda1 502M 36M 441M 8% /boot
/dev/mapper/VGExaDb-LVDbOra1
99G 55G 39G 59% /u01
tmpfs 81G 26M 81G 1% /dev/shm
/dev/mapper/datavg-lv_data
549G 355G 166G 69% /backup
dbfs-dbfs@dbfs:/ 800G 4.9G 796G 1% /data
10.194.42.11:/media/_data
985G 199M 935G 1% /root/tar
/dev/mapper/VGExaDb-root_snap
30G 14G 15G 49% /root/mnt
/dev/mapper/VGExaDb-u01_snap
99G 55G 39G 59% /root/mnt/u01
做完上述步骤之后,可以看到多了两个lv,对VGExaDb-LVDbSys1和VGExaDb-LVDbOra1做了一个备份并挂载成了文件系统。接下来我们就可以把我们备份的文件系统tar到NFS上面。
[root@gxx2db01 ~]# cd /root/mnt
[root@gxx2db01 ~]# tar -pjcvf /root/tar/mybackup.tar.bz2 * /boot --exclude \
tar/mybackup.tar.bz2 --exclude /root/tar > \
/tmp/backup_tar.stdout 2> /tmp/backup_tar.stderr
做完tar之后可以查看/tmp/backup_tar.stderr文件检查是否有错误。如果无误,我们就可以把刚刚建的文件系统挂载点进行卸载,创建的LV进行删除。
[root@gxx2db01 ~]# cd /
[root@gxx2db01 ~]# umount /root/mnt/u01
[root@gxx2db01 ~]# umount /root/mnt
[root@gxx2db01 ~]# /bin/rm -rf /root/mnt
[root@gxx2db01 ~]# lvremove /dev/VGExaDb/u01_snap
[root@gxx2db01 ~]# lvremove /dev/VGExaDb/root_snap
以上操作分别在两个节点进行。
2.2备份计算节点数据库
计算节点上运行了三套数据库实例,分别是gxypdb,orcl,jjscpd等,而gxypdb和orcl采用了RMAN备份,而jjscpd采用了exp备份,是放在计算节点的dbfs文件系统里面的。对于使用RMAN备份的数据库,我们采用下列脚本,把数据备份到了/backup/orcl和/backup/gxypdb下面。我们只需要把备份出的文件夹拷贝到NFS目录下即可完成对数据库的备份,而对于exp的备份,我们也只需要把dbfs文件系统里面的dmp文件copy到NFS目录下。
--->备份数据库
export ORACLE_SID=orcl2
source /home/oracle/.bash_profile
$ORACLE_HOME/bin/rman log=/backup/log/full_`date +%Y%m%d%H%M`.log <
connect target /
run
{
# Backup Database full
BACKUP
SKIP INACCESSIBLE
TAG hot_db_bk_level
FORMAT '/backup/orcl/bk_s%s_p%p_t%T'
DATABASE
INCLUDE CURRENT CONTROLFILE;
}
run
{
# Backup Archived Logs
sql 'alter system archive log current';
change archivelog all crosscheck;
BACKUP
FORMAT '/backup/orcl/ar_s%s_p%p_t%T'
ARCHIVELOG ALL;
# Control file backup
BACKUP
FORMAT '/backup/orcl/cf_s%s_p%p_t%T'
CURRENT CONTROLFILE;
}
delete noprompt archivelog until time "sysdate - 5";
crosscheck backup;
delete force noprompt expired backup;
allocate channel for maintenance type disk;
delete force noprompt obsolete device type disk;
list backup summary;
exit;
EOF
--->拷贝备份集到NFS
[root@gxx2db01 ~]# cp -rp /backup/orcl/ /root/tar
[root@gxx2db01 ~]# cp -rp /backup/gxypdb/ /root/tar
[root@gxx2db01 ~]# cp –rp /data/*.dmp /root/tar
2.3备份计算节点集群软件和数据库软件
备份计算节点集群软件和数据库软件,主要是为了防止安装QUARTERLY DATABASE PATCH FOR EXADATA (BP 23),也就是GI和DB的Patch出现不可预知的错误,方便我们能够进行回退。此操作最好是要先停止掉数据库软件和GI软件。
[oracle@gxx2db01 ~]$ srvctl stop instance –i orcl1 –d orcl
[oracle@gxx2db01 ~]$ srvctl stop instance –i orcl2 –d orcl
[oracle@gxx2db01 ~]$ srvctl stop instance –i gxypdb1 –d gxypdb
[oracle@gxx2db01 ~]$ srvctl stop instance –i gxypdb2 –d gxypdb
[oracle@gxx2db01 ~]$ srvctl stop instance –i jjscpd1 –d jjscpd
[oracle@gxx2db01 ~]$ srvctl stop instance –i jjscpd2 –d jjscpd
[root@gxx2db01 ~]# /u01/app/11.2.0.3/grid/bin/crsctl stop crs -f
[root@gxx2db01 ~]# cd /root/tar
[root@gxx2db01 ~]# tar -cvf oraInventory.tar /u01/app/oraInventory
[root@gxx2db01 ~]# tar -cvf grid.tar /u01/app/11.2.0.3/grid
[root@gxx2db01 ~]# tar -cvf oracle.tar /u01/app/oracle/product/11.2.0.3/dbhome_1
2.4备份交换机配置文件
任意登陆到一台ILOM的管理界面上,例如:gxx2db01-ilom https://10.100.84.118,通过点击Maintenance标签,再选择Backup/Restore的标签,选择Operation为Backup,而Method为Browser,选择完成之后在Passphrase输入密码,点击Run,即可以在浏览器中生成一个XML的备份文件。
上一篇:ORACLE EXADATA升级—从11.2.3.1.0到11.2.3.3.0–(1)升级简介
下一篇:ORACLE EXADATA升级—从11.2.3.1.0到11.2.3.3.0–(3)升级LSI Disk Array