1、 热备所有数据库
热备脚本:10.1.1.200,/backup/scripts/whole_db_backup.sh
2、 在每个计算节点执行dbserver_backup.sh脚本
Run script "dbserver_backup.sh" in each compute node. The script takes backup of "/boot" (to ROOT filesystem) and ROOT filesystem (with LVM snapshot).
The script takes backup of "/boot" (to ROOT filesystem) and ROOT filesystem (with LVM snapshot).
2.1 对GPT 表做备份
节点一,root用户执行:
dd if=/dev/sda of=/erpnfs/backup/fs_backup/fs_20160518_bak/db01_GPT.bin bs=512 count=34
节点二,root用户执行:
dd if=/dev/sda of=/erpnfs/backup/fs_backup/fs_20160518_bak/db02_GPT.bin bs=512 count=34
2.2 确定没有NFS或SMBFS mount
# mount | grep -w 'type nfs'
[root@dm01db01 fs_20160518_bak]# mount | grep -w 'type nfs'
10.1.12.31:/export/ExdataNfs on /erpnfs type nfs (rw,vers=4,addr=10.1.12.31,clientaddr=10.1.11.10)
[root@dm01db02 ~]# mount | grep -w 'type nfs'
10.1.12.31:/export/ExdataNfs on /erpnfs type nfs (rw,vers=4,addr=10.1.12.31,clientaddr=10.1.11.12)
# mount | grep -w 'type smbfs'
如果有输出,记录下mount信息后,umount
节点一,root用户执行:
umount /erpnfs
节点二,root用户执行:
umount /erpnfs
2.3 确定活动的LV
节点一,root用户执行:
/opt/oracle.SupportTools/dbserver_backup.sh --get-backup-partition
2.3.1) If above command returns "2", run below command to take backup. ( This applies to most cases)
# /opt/oracle.SupportTools/dbserver_backup.sh
2.3.2) If above command returns "1", it's likely there was rollback operation in the past. You need to run below command instead.
# /opt/oracle.SupportTools/dbserver_backup.sh --backup-to-partition 1
节点二,root用户执行:
/opt/oracle.SupportTools/dbserver_backup.sh --get-backup-partition
2.3.1) If above command returns "2", run below command to take backup. ( This applies to most cases)
# /opt/oracle.SupportTools/dbserver_backup.sh
2.3.2) If above command returns "1", it's likely there was rollback operation in the past. You need to run below command instead.
# /opt/oracle.SupportTools/dbserver_backup.sh --backup-to-partition 1
3、 手工备份u01文件系统,此步骤LVM snapshot将会包含
3.1对一节点的重要文件系统做备份
节点一:root用户执行
3.1.1对\u01目录做snapshot
1、对\u01做snapshot
lvcreate –L100G –s –n snap11_LVDbOra1 /dev/VGExaDb/LVDbOra1
5月19日:lvcreate -L 100G -s -n snap12_LVDbOra1 /dev/VGExaDb/LVDbOra1
5月20日:lvcreate -L 100G -s -n snap13_LVDbOra1 /dev/VGExaDb/LVDbOra1
2、为创建的快照设置卷标
e2label /dev/VGExaDb/snap11_LVDbOra1 U01_SNAP11
3、查看快照是否创建成功
lvs
3.1.2对\目录做snapshot
1、对\u01做snapshot
lvcreate –L 50G –s –n snap11_LVDbSys1 /dev/VGExaDb/LVDbSys1
5月19日:lvcreate -L 50G -s -n snap12_LVDbSys1 /dev/VGExaDb/LVDbSys1
5月20日:lvcreate -L 50G -s -n snap13_LVDbSys1 /dev/VGExaDb/LVDbSys1
2、为创建的快照设置卷标
e2label /dev/VGExaDb/snap11_LVDbSys1 ROOT_SNAP11
3、查看快照是否创建成功
Lvs
3.1.3对\、\u01、\boot做tar备份
1、在一节点mount NFS
[root@dm01db01 ~]# mount 10.1.12.31:/export/ExdataNfs /erpnfs
[root@dm01db01 fs_20160518_bak]# mount | grep -w 'type nfs'
10.1.12.31:/export/ExdataNfs on /erpnfs type nfs (rw,vers=4,addr=10.1.12.31,clientaddr=10.1.11.10)
2、创建\和\u01文件系统snapshot的mount点
mkdir –p /tmpmnt/u01
mkdir –p /tmpmnt/root
3、将snapshot挂至mount点
mount /dev/VGExaDb/snap11_LVDbOra1 /tmpmnt/u01
mount /dev/VGExaDb/snap11_LVDbSys1 /tmpmnt/root
4、查看是否mount成功
mount
ls -l /tmpmnt/u01
ls -l /tmpmnt/root
Lvs
5、使用tar对\、\u01的快照和\boot做文件系统层面备份19:19~
tar –pjcvf /erpnfs/backup/fs_backup/fs_20160518db01_bak.tar.bz2 /tmpmnt/u01/* /tmpmnt/root/* /boot > db01_tar.out 2> db01_stderr.out
tar命令执行完成后查看stderr.out中看是否有错误日志
由于\和\u01的快照总大小大于100GB,使用tar命令做压缩备份很慢(40min 250MB左右),所以只做/boot的tar备份,即/和/u01只通过本地snapshot方式备份,没有备份到非一体机存储空间,/boot通过tar命令备份到了非一体机存储空间
tar -pjcvf /erpnfs/backup/fs_backup/fs_20160518db01_bak.tar.bz2 /boot > db01_tar.out 2> db01_stderr.out
6、umount \、\u01的快照防止程序误写入
umount /dev/VGExaDb/snap11_LVDbOra1
umount /dev/VGExaDb/snap11_LVDbSys1
mount
3.2对二节点的重要文件系统做备份
节点二:root用户执行
3.2.1对\u01目录做snapshot
1、对\u01做snapshot
lvcreate –L 100G –s –n snap21_LVDbOra1 /dev/VGExaDb/LVDbOra1
5月19日:
[root@dm01db02 ~]# lvcreate -L 100G -s -n snap22_LVDbOra1 /dev/VGExaDb/LVDbOra1
Logical volume "snap22_LVDbOra1" created.
5月20日:
[root@dm01db02 ~]# lvcreate -L 100G -s -n snap23_LVDbOra1 /dev/VGExaDb/LVDbOra1
2、为创建的快照设置卷标
e2label /dev/VGExaDb/snap21_LVDbOra1 U01_SNAP21
3、查看快照是否创建成功
Lvs
3.2.2对\目录做snapshot
1、对\u01做snapshot
lvcreate –L 50G –s –n snap21_LVDbSys1 /dev/VGExaDb/LVDbSys1
2、为创建的快照设置卷标
e2label /dev/VGExaDb/snap21_LVDbSys1 ROOT_SNAP21
3、查看快照是否创建成功
Lvs
3.2.3对\、\u01、\boot做tar备份
1、在一节点mount NFS
[root@dm01db02 ~]# mount 10.1.12.31:/export/ExdataNfs /erpnfs
[root@dm01db01 fs_20160518_bak]# mount | grep -w 'type nfs'
10.1.12.31:/export/ExdataNfs on /erpnfs type nfs (rw,vers=4,addr=10.1.12.31,clientaddr=10.1.11.10)
2、创建\和\u01文件系统snapshot的mount点
mkdir –p /tmpmnt/u01
mkdir –p /tmpmnt/root
3、将snapshot挂至mount点
mount /dev/VGExaDb/snap21_LVDbOra1 /tmpmnt/u01
mount /dev/VGExaDb/snap21_LVDbSys1 /tmpmnt/root
4、查看是否mount成功
mount
ls -l /tmpmnt/u01
ls -l /tmpmnt/root
Lvs
5、使用tar对\、\u01的快照和\boot做文件系统层面备份
tar –pjcvf /erpnfs/backup/fs_backup/fs_20160518_bak.tar.bz2 /tmpmnt/u01/* /tmpmnt/root/* /boot > db02_tar.out 2> db02_stderr.out
由于\和\u01的快照总大小大于100GB,使用tar命令做压缩备份很慢(40min 250MB左右),所以只做/boot的tar备份,即/和/u01只通过本地snapshot方式备份,没有备份到非一体机存储空间,/boot通过tar命令备份到了非一体机存储空间
tar -pjcvf /erpnfs/backup/fs_backup/fs_20160518db02_bak.tar.bz2 /boot > db01_tar.out 2> db01_stderr.out
tar命令执行完成后查看stderr.out中看是否有错误日志
6、umount \、\u01的快照防止程序误写入
umount /dev/VGExaDb/snap21_LVDbOra1
umount /dev/VGExaDb/snap21_LVDbSys1
mount
4、 归档备份
归档备份脚本:10.1.1.200:/backup/scripts/whole_db_archbackup.sh
5、 归档备份完成后,卸载NFS目录
1、节点一,root用户执行:
umount /erpnfs
mount
2、节点二,root用户执行:
umount /erpnfs
mount
6、 确认升级成功后删除快照
5.1节点一
Root执行:
1、查看快照有没有挂载
mount
2、确定要删除的快照
Lvs
3、删除快照
lvremove /dev/VGExaDb/snap11_LVDbOra1
lvremove /dev/VGExaDb/snap11_LVDbSys1
lvremove /dev/VGExaDb/snap12_LVDbOra1
lvremove /dev/VGExaDb/snap12_LVDbSys1
lvremove /dev/VGExaDb/snap13_LVDbOra1
lvremove /dev/VGExaDb/snap13_LVDbSys1
5.1节点二
Root执行:
1、查看快照有没有挂载
mount
4、确定要删除的快照
Lvs
5、删除快照
lvremove /dev/VGExaDb/snap21_LVDbOra1
lvremove /dev/VGExaDb/snap21_LVDbSys1
lvremove /dev/VGExaDb/snap22_LVDbOra1
lvremove /dev/VGExaDb/snap22_LVDbSys1
lvremove /dev/VGExaDb/snap23_LVDbOra1
lvremove /dev/VGExaDb/snap23_LVDbSys1
-----------------------回退步骤-----------------------
本步骤仅在升级失败后使用
7.1 /文件系统回退
1、开始使用Esc进入CD光盘引导
2、选择secure模式
3、选择语言
4、键盘模式
6、进入命令行界面
7、进入命令行界面,执行以下命令,通过root_snapshot恢复lv_root
7、reboot
7.2 非/文件系统回退
lvconvert –merge /dev/vg_testsnap/u01_snapshot
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31345818/viewspace-2106205/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31345818/viewspace-2106205/