最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

db2自动备份(linux、windows)总结

来源:动视网 责编:小采 时间:2020-11-09 08:18:52
文档

db2自动备份(linux、windows)总结

db2自动备份(linux、windows)总结:1.linux db2 自动备份,备份后压缩,拷贝到另一服务器 全备份: #!/bin/sh #------------------------------------- #db2自动备份脚本 #by lushuai # create at 2013-08-05 #--------------------------------
推荐度:
导读db2自动备份(linux、windows)总结:1.linux db2 自动备份,备份后压缩,拷贝到另一服务器 全备份: #!/bin/sh #------------------------------------- #db2自动备份脚本 #by lushuai # create at 2013-08-05 #--------------------------------


增量备份:

#!/bin/sh
#-------------------------------------
#db2自动备份脚本
#by lushuai
# create at 2013-08-05
#------------------------------------
#参数
Basepath=/home/db2-backup-linux/
dblist=$Basepath"script/dblist.txt" #要备份的数据库文件列表
bkdate=`date +%Y%m%d` #备份时间
#bkrootpath=$Basepath"" #备份路径
TargetPath=$Basepath
FilePath=$TargetPath"backup/incremental"$bkdate
bkyear="`date +%Y`" #要备份的年度,默认是当前年度
ftphost=192.168.0.15 #ftp服务器ip
ftpuser=gever #ftp服务器的用户,必须有create read write权限
ftppwd=geverabc #ftp服务器的用户username的密码
dbUser=db2admin
dbPwd=db2admin
Backup_Log=$TargetPath"incremental"$bkdate.log #日志

echo "1.备份初始化,增量备份时间为 `date +'%Y-%m-%d %H:%M:%S'`" >> $Backup_Log

if [ -e "$Backup_Log" ];then {
echo "the log file is already exist!" >> $Backup_Log
} else {
touch $Backup_Log
echo "create log file Successful!" >> $Backup_Log
}
fi


#创建备份文件存储路径,并授权
if [ -w "${FilePath}" ];then {
echo "---The database dir is already exist!" >> $Backup_Log
} else {
mkdir -p "$FilePath"
chmod 777 -R "$FilePath"
echo "---The database dir create Successful!" >> $Backup_Log
}
fi

#读取数据库文件列表,备份数据库
while read LINE
do
echo "2.开始备份数据库:"$LINE >> $Backup_Log
su - db2admin -c "db2 backup db $LINE online incremental to $FilePath include logs"
echo "3.数据库备份结束:"$LINE"($FilePath)" >> $Backup_Log
done < $dblist

#文件打包
echo "4.压缩文件" >> $Backup_Log
cd $TargetPath"backup"
tar -zcvf "incremental"$bkdate.tgz "incremental"$bkdate >> $Backup_Log

#删除压缩前数据
echo "5.删除压缩前数据" >> $Backup_Log
echo
rm -rf "incremental"${bkdate}
#删除10天前备份数据

if [ -w "`date +%Y%m%d --date '20 days ago'`" ]; then {
echo "6.删除20天前备份数据" >> $Backup_Log
rm -rf "$TargetPath"backup/incremental"`date +%y%m%d --date '20 days ago'`"
} else {
echo "6.没有20天前备份数据供删除" >> $Backup_Log
}
fi
echo "7.备份结束" >> $Backup_Log

#scp "incremental"$bkdate.tgz root@10.10.0.154:/home/212_db_backup
#echo "8.备份文件上传至10.10.0.154:/home/212_db_backup,多机备份" >> $Backup_Log
echo "============================================================================" >> $Backup_Log
exit

2.linux db2导出表结构和数据

echo 数据备份开始
#加载环境变量
. /home/db2inst1/sqllib/db2profile
#BACKDIR是放置备份文件的目录
BACKDIR="/home/db2inst1/backup"
#DBNAME是数据库名称
DBNAME="ATMP"
#连接数据库
db2 connect to $DBNAME user db2inst1 using 000000
#新建临时目录存放导出的表结构文件
#mkdir $BACKDIR
#新建临时目录存放导出的表结构文件
mkdir $BACKDIR/$DBNAME
#给几个目录授可读、可写权限
chmod a+w $BACKDIR
chmod a+w $BACKDIR/$DBNAME
#切换到新建临时目录下
cd $BACKDIR/$DBNAME
#执行导出数据库表结构
db2look -d $DBNAME -td @ -i db2inst1 -w 000000 -e -o ATMP.sql
#新建临时目录存放导出的表数据文件
mkdir atmpdata
#给目录授可读、可写权限
chmod a+w atmpdata
#切换到新建临时目录下
cd atmpdata
#执行导出数据库表数据
db2move $DBNAME export -u db2inst1 -p 000000
#取系统日期
DATE=`date +%Y%m%d`
hh=`date +%H`
mm=`date +%M`
now=$DATE-$hh:$mm
#切换到备份目录下
cd $BACKDIR
echo $now
#开始打包和压缩备份文件
tar cvf - $DBNAME | gzip -qc > $DBNAME.$now.tar.gz
#删除临时目录
rm -rf $BACKDIR/$DBNAME
echo 完成数据备份

3.window 自动备份数据

参考:http://lushuai1987.iteye.com/admin/blogs/1920669

文档

db2自动备份(linux、windows)总结

db2自动备份(linux、windows)总结:1.linux db2 自动备份,备份后压缩,拷贝到另一服务器 全备份: #!/bin/sh #------------------------------------- #db2自动备份脚本 #by lushuai # create at 2013-08-05 #--------------------------------
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top