Linux系统IBM DB2数据库每日自动全量备份

目录

 

场景:IBM DB数据库已经运用于生产环境,需每天备份,防范于风险

说明:支持每天定时全量备份(包含DDL文件和数据表文件,可根据DB2命令分表导入),并自动压缩文件

1、准备备份脚本SHELL文件

2、配置定时备份任务

3、验证是否生效


 

场景:IBM DB数据库已经运用于生产环境,需每天备份,防范于风险

说明:支持每天定时全量备份(包含DDL文件和数据表文件,可根据DB2命令分表导入),并自动压缩文件

1、准备备份脚本SHELL文件

使用db2inst1身份登录主机

vi db2backup.sh ,脚本内容如下所示:

#!/bin/sh
# edit by 2019-12-09
# use this shell auto backup db2 database

# param info
currDate=`date +%y%m%d%H%M%S`
dbbakDir="/home/db2inst1/dbbak"
currDayBakDir="$dbbakDir/$currDate/"

database="test_db"
schema="test_schema"
userName="test_user"
userPwd="test_userpwd"

echo "db2 auto backup param info:"
echo "currDate: ${currDate}"
echo "currDayBakDir: ${currDayBakDir}"

#judge currday backup dir is exist
if [ ! -d "$currDayBakDir" ]; then
    mkdir "$currDayBakDir"
fi

cd "$currDayBakDir"

B2INSTANCE=db2inst1
export DB2INSTANCE

export PATH=$PATH:.$HOME/bin:/home/db2inst1/sqllib/bin
if [ -f /home/db2inst1/sqllib/db2profile ]
then
source /home/db2inst1/sqllib/db2profile
fi

echo "export database for ${schema} begin..."
/opt/ibm/db2/V9.7/bin/db2look -d "$database" -z "$schema" -e -o "$schema"_"$currDate".ddl -i "$userName" -w "$userPwd"
mkdir "$schema"
cd "$schema"
/opt/ibm/db2/V9.7/bin/db2move "$database" export -sn "$schema"
echo "export database for ${schema} end"

echo "tar dir"
cd "$dbbakDir"
tar -czvf "$currDate".tar.gz "$currDate"
rm -rf "$currDate"

echo "Congratulations,db2 auto backup success"

自行更改DB2备份文件的目录,如下所示:

dbbakDir="/home/db2inst1/dbbak"

自行更改数据库的数据库名称、库名称、用户、密码等,如下所示:

database="test_db"
schema="test_schema"
userName="test_user"
userPwd="test_userpwd"

记得给予执行权限chmod +x db2backup.sh

2、配置定时备份任务

crontab -e

00 23 * * * /home/db2inst1/db2backup.sh 2> /home/db2inst1/db2backup_err.log &

记得保存退出:ESC后,输入:wq

以上示例表示每天晚上23点开始全量备份数据库

检查是否已经纳入linux定时任务

crontab -l

3、验证是否生效

首先检查脚本是否可以正确执行和备份,可切换到目录/home/db2inst1下,直接执行db2backup.sh,检查是否有备份压缩文件输出。

预祝操作顺利,如有疑问,可在文章回复评论。

如果觉得好,下方请点赞。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值