首页 > 代码库 > 最近为公司制定的备份解决方案
最近为公司制定的备份解决方案
说明
不用TSM,不用CA,不用带库,不用NBU
对于差钱的公司来说,拿土方法自己弄了套免费的
1、拓扑
2、排程
3、各服务器配置说明
备份服务器设置:
1、nfs搭建 [root@wubackup oraclebackup]# rpm -qa | grep nfs nfs4-acl-tools-0.3.3-6.el6.x86_64 nfs-utils-1.2.3-39.el6.x86_64 nfs-utils-lib-1.1.5-6.el6.x86_64 [root@wubackup home]# vim /etc/exports home/oraclebackup 10.55.1.204(rw,no_root_squash) home/eipbackup 10.55.1.3(rw,no_root_squash) home/wuwis2backup 10.55.1.88(rw,no_root_squash) home/wuwis1backup 10.55.1.10(rw,no_root_squash) home/wulmailbackup 10.55.1.13(rw,no_root_squash) home/wuwtl1backup 10.55.1.14(rw,no_root_squash) [root@wubackup home]# exportfs -r [root@wubackup home]# service start nfs.service start: unrecognized service [root@wubackup home]# service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS mountd: [ OK ] Starting NFS daemon: [ OK ] Starting RPC idmapd: [ OK ] [root@wubackup home]# ss -tnl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:875 *:* LISTEN 0 128 :::43660 :::* LISTEN 0 64 :::34191 :::* LISTEN 0 128 :::58255 :::* LISTEN 0 128 :::111 :::* LISTEN 0 128 *:111 *:* LISTEN 0 128 :::41842 :::* LISTEN 0 128 *:35668 *:* LISTEN 0 128 :::22 :::* LISTEN 0 128 *:22 *:* LISTEN 0 128 127.0.0.1:631 *:* LISTEN 0 128 ::1:631 :::* LISTEN 0 64 *:48665 *:* LISTEN 0 100 ::1:25 :::* LISTEN 0 100 127.0.0.1:25 *:* LISTEN 0 128 :::56346 :::* LISTEN 0 128 127.0.0.1:6010 *:* LISTEN 0 128 ::1:6010 :::* LISTEN 0 128 127.0.0.1:6011 *:* LISTEN 0 128 ::1:6011 :::* LISTEN 0 128 *:36064 *:* LISTEN 0 64 :::2049 :::* LISTEN 0 64 *:2049 *:* LISTEN 0 128 *:54337 *:* LISTEN 0 128 *:49322 *:* [root@wubackup home]# ss -tnl | grep 2049 LISTEN 0 64 :::2049 :::* LISTEN 0 64 *:2049 *:* [root@wubackup home]# ls eipbackup lost+found oraclebackup wulmailbackup wuwis1backup wuwis2backup wuwtl1backup 2、samba服务搭建 说明:本来规划的时候都是使用nfs提供服务,但是server 2003要挂载nfs文件夹需要使用sfu插件,实在国内找不到资源,再次吐槽下天朝。所以改用了使用samba提供服务。 [root@wubackup oraclebackup]# yum install samba -y Installed: samba.x86_64 0:3.6.23-42.el6_9 Dependency Updated: libsmbclient.x86_64 0:3.6.23-42.el6_9 samba-client.x86_64 0:3.6.23-42.el6_9 samba-common.x86_64 0:3.6.23-42.el6_9 samba-winbind.x86_64 0:3.6.23-42.el6_9 samba-winbind-clients.x86_64 0:3.6.23-42.el6_9 Complete! [root@wubackup oraclebackup]# service smb status smbd is stopped [root@wubackup oraclebackup]# useradd wuwis1 [root@wubackup oraclebackup]# useradd wuwis2 [root@wubackup oraclebackup]# smbpasswd -a wuwis1 New SMB password: Retype new SMB password: Added user wuwis1. [root@wubackup oraclebackup]# smbpasswd -a wuwis2 New SMB password: Retype new SMB password: Added user wuwis2. [root@wubackup oraclebackup]# vim /etc/samba/smb.conf [root@wubackup oraclebackup]# cd /etc/samba/ [root@wubackup samba]# ls lmhosts smb.conf smbusers [root@wubackup samba]# cp smb.conf{,.bak} [root@wubackup samba]# ls lmhosts smb.conf smb.conf.bak smbusers [root@wubackup samba]# vim smb.conf [wuwis1backup] comment = wuwis1backup path= /home/wuwis1backup public = yes valid users = wuwis1 read list = wuwis1 write list = wuwis1 [wuwis2backup] comment = wuwis2backup path= /home/wuwis2backup public = yes valid users = wuwis2 read list = wuwis2 write list = wuwis2 [root@wubackup samba]# service smb start Starting SMB services: [ OK ] 3、脚本说明: [root@wubackup ~]# crontab -l #tar backupfile 12 8 * * * /OPS/tar.sh &>>/OPS/crontar.log #rm old backupfile 0 17 * * * /OPS/rmoldbak.sh &>>/OPS/cronrm.log [root@wubackup ~]# cat /OPS/tar.sh #!/bin/bash #tar backup file #tar eip backupfile eipbackupfile=/home/eipbackup/eipbak`date -d "1 days ago" +%y%m%d` if [ -e $eipbackupfile ];then echo "`date`" >> /OPS/eiptar.log echo "tar eipbackupfile start" >>/OPS/eiptar.log tar -zcf $eipbackupfile.tar.gz $eipbackupfile rm -rf $eipbackupfile echo "`date`" >> /OPS/eiptar.log echo "tar eipbackupfile sucsessful" >>/OPS/eiptar.log else echo "`date`" >> /OPS/eiptar.log echo "tar eipbackupfile fail,file not exist!" >>/OPS/eiptar.log fi #tar wuwtl1 backupfile wuwtl1backupfile=/home/wuwtl1backup/wuwtl1bak`date +%y%m%d` if [ -e $wuwtl1backupfile ];then echo "`date`" >> /OPS/wuwtl1tar.log echo "tar wuwtl1backupfile start" >>/OPS/wuwtl1tar.log tar -zcf $wuwtl1backupfile.tar.gz $wuwtl1backupfile rm -rf $wuwtl1backupfile echo "`date`" >> /OPS/wuwtl1tar.log echo "tar wuwtl1backupfile sucsessful" >>/OPS/wuwtl1tar.log else echo "`date`" >> /OPS/wuwtl1tar.log echo "tar wuwtl1backupfile fail,file not exist!" >>/OPS/wuwtl1tar.log fi #tar wuwis2 backupfile wuwis2backupfile=/home/wuwis2backup/wuwis2bak`date +%y%m%d` if [ -e $wuwis2backupfile ];then echo "`date`" >> /OPS/wuwis2tar.log echo "tar wuwis2backupfile start" >>/OPS/wuwis2tar.log tar -zcf $wuwis2backupfile.tar.gz $wuwis2backupfile rm -rf $wuwis2backupfile echo "`date`" >> /OPS/wuwis2tar.log echo "tar wuwis2backupfile sucsessful" >>/OPS/wuwis2tar.log else echo "`date`" >> /OPS/wuwis2tar.log echo "tar wuwis2backupfile fail,file not exist!" >>/OPS/wuwis2tar.log fi #tar wuwis1 backupfile wuwis1backupfile=/home/wuwis1backup/wuwis1bak`date +%y%m%d` if [ -e $wuwis1backupfile ];then echo "`date`" >> /OPS/wuwis1tar.log echo "tar wuwis1backupfile start" >>/OPS/wuwis1tar.log tar -zcf $wuwis1backupfile.tar.gz $wuwis1backupfile rm -rf $wuwis1backupfile echo "`date`" >> /OPS/wuwis1tar.log echo "tar wuwis1backupfile sucsessful" >>/OPS/wuwis1tar.log else echo "`date`" >> /OPS/wuwis1tar.log echo "tar wuwis1backupfile fail,file not exist!" >>/OPS/wuwis1tar.log fi [root@wubackup ~]# cat /OPS/rmoldbak.sh #!/bin/bash #rm old backupfile #rm oraclebackup #oracle backup keep 7 days echo `date` >>/OPS/rmorabak.log echo "rm old oraclebackup start" >>/OPS/rmorabak.log find /home/oraclebackup/ -ctime +6 | xargs rm -rf echo "old oraclebackup rm finish sucessful" >>/OPS/rmorabak.log #rm wuwtl1backup #wuwtl1 backup keep 7 days echo `date` >>/OPS/rmwuwtl1bak.log echo "rm old wuwtl1backup start" >>/OPS/rmwuwtl1bak.log find /home/wuwtl1backup/ -ctime +6 | xargs rm -rf echo "old wuwtl1backup rm finish sucessful" >>/OPS/rmwuwtl1bak.log #rm wulmailbackup #wulmail backup keep 5 days echo `date` >>/OPS/rmwulmailbak.log echo "rm old wulmailbackup start" >>/OPS/rmwulmailbak.log find /home/wulmailbackup/ -ctime +4 | xargs rm -rf echo "old wulmailbackup rm finish sucessful" >>/OPS/rmwulmailbak.log #rm eipbackup #eip backup keep 5 days echo `date` >>/OPS/rmeipbak.log echo "rm old eipbackup start" >>/OPS/rmeipbak.log find /home/eipbackup/ -ctime +4 | xargs rm -rf echo "old eipbackup rm finish sucessful" >>/OPS/rmeipbak.log #rm wuwis2backup #wuwis2 backup keep 5 days echo `date` >>/OPS/rmwuwis2bak.log echo "rm old wuwis2 backup start" >>/OPS/rmwuwis2bak.log find /home/wuwis2backup/ -ctime +4 | xargs rm -rf echo "old wuwis2backup rm finish sucessful" >>/OPS/rmwuwis2bak.log #rm wuwis1backup #wuwis1 backup keep 5 days echo `date` >>/OPS/rmwuwis1bak.log echo "rm old wuwis1 backup start" >>/OPS/rmwuwis1bak.log find /home/wuwis1backup/ -ctime +4 | xargs rm -rf echo "old wuwis1backup rm finish sucessful" >>/OPS/rmwuwis1bak.log
oracle db
1、进行nfs挂载,并加入fstab中 [root@DataGuard script]# showmount -e 10.55.2.83 Export list for 10.55.2.83: /home/oraclebackup 10.55.1.204 [root@DataGuard script]# cd / [root@DataGuard /]# mkdir oraclebackup [root@DataGuard /]# mount -t nfs 10.55.2.83:/home/oraclebackup /oraclebackup fstab中添加 10.55.2.83:/home/oraclebackup /oraclebackup nfs defaults 0 0 2、设定脚本,添加crontab中 #dbbackup to wubackup 30 9 * * * /OPS/orabackup.sh 3、脚本说明: #!/bin/bash # tar oraclebackup file # check RMAN is run? filename="/mnt/rman/log/RmanBackup_`date +%y%m%d`.log" comparedata="http://www.mamicode.com/Recovery Manager complete." if [ -e $filename ];then echo "`date` RMAN is run" &>> /OPS/tarlog else echo "`date` RMAN is not run,please check" &>> /OPS/tarlog exit 1 fi # check RMAN is OK? data=http://www.mamicode.com/`tail -1 $filename`"$data" == "$comparedata" ];then echo "`date` Rman backup sucess" &>> /OPS/tarlog else echo "`date` Rman backup fail" &>> /OPS/tarlog exit 2 fi # tar backupfile and move to backupserver /usr/bin/find /mnt/rman -name ‘oradb1*‘ > /OPS/tarlist for i in `/bin/cat /OPS/tarlist`;do echo "`date` tar $i start" &>> /OPS/tarlog tar -zcvf $i.tar.gz $i &>> /OPS/tarlog done if [ $? -eq 0 ];then echo "`date` tar end success" &>> /OPS/tarlog mv /mnt/rman/*.tar.gz /oraclebackup if [ $? -eq 0 ];then echo "`date` move to oraclebackup end success" &>> /OPS/tarlog else echo "`date` move to oraclebackup fail" &>> /OPS/tarlog fi else echo "`date` tar fail" &>> /OPS/tarlog fi
1、nfs挂载,fstab中添加 10.55.2.83:/home/wulmailbackup /wulmailbackup nfs defaults 0 0 2、脚本编写并在crontab中添加 #wulmail backup to wubackup 0 21 * * * /OPS/wulmailbackup.sh 3、脚本说明: #!/bin/bash #wulmail data backup logfile=/OPS/wulmailbackup.log bakfile=wulmailbak`date +%y%m%d` #cp notesdata to notesdatabak echo `date` >> $logfile echo "wulmail backup start" >> $logfile cp -rf /notesdata /notesdatabak/$bakfile if [ $? -eq 0 ];then echo "cp data finish" >> $logfile else echo "cp fail" >> $logfile exit 1 fi #tar wulmail data echo "tar data start" >>$logfile tar -zcf /notesdatabak/$bakfile.tar.gz /notesdatabak/$bakfile if [ $? -eq 0 ];then echo "tar data finish" >> $logfile rm -rf /notesdatabak/$bakfile else echo "tar fail" >> $logfile exit 2 fi #bakcup wulmail data to backupserver echo "mv backup wulmail data to backupserver" >>$logfile mv /notesdatabak/$bakfile.tar.gz /wulmailbackup if [ $? -eq 0 ];then echo `date` >> $logfile echo "wulmail backup sucessful" >> $logfile else echo "mv fail,backup end" >> $logfile exit 3 fi
eip(server 2008服务器均雷同,traveler配置此次省略):
1、windows上安装nfs服务 servermanagercmd.exe -install FS-NFS-Servicesd.exe -install FS-NFS-Services net use /persistent:yes #让磁盘隐射永久有效 重启存在 2、bat脚本编写并添加至执行计划 @echo off mount -u:root -p:oracleadmin 10.55.2.83:/home/eipbackup z: echo %date% %time% >>z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo eip backup start >>z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log md z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2% xcopy D:\Lotus z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%\ /S/E >>z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo %date% %time% >>z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo eip backup sucessful >>z:\eipbak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log umount z:
ISO(ISO1 2相同配置)
1、bat脚本编写并添加至执行计划 @echo off net use z: \\10.55.2.83\wuwis2backup "******" /user:"wuwis2" echo %date% %time% >>z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo wuwis2 backup start >>z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log md z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2% xcopy D:\Lotus z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%\ /S/E >>z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo %date% %time% >>z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log echo wuwis2 backup sucessful >>z:\wuwis2bak%Date:~2,2%%Date:~5,2%%Date:~8,2%.log net use z: /delete
本文出自 “Open World” 博客,请务必保留此出处http://voidyao000.blog.51cto.com/12458042/1917630
最近为公司制定的备份解决方案
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。