db2定时备份方法,
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2定时备份方法,相关的知识,希望对你有一定的参考价值。
数据库环境是windows server 2008,DB2 9.7, 我的数据需要每天进行一次增量备份,每个星期进行一次完整备份,备份时我的应用程序一直都是连着数据库的,哪位大侠能提供个详细步骤不?网上好多都只提供了几个命令,说的有点模糊,谢谢大侠!!
db2自身就有备份机制,参考方法如下:
1、 在开始->运行,输入命令db2cmd,打开一个新的db2命令窗口;
在DB2的“命令窗口”执行下面语句创建备份运行数据库
db2 create tools catalog cc create new database toolsdb
目的是创建一个命名为toolsdb的数据库,用来存放任务信息;
2、开启“任务中心”窗口,如下图;
3、新建任务;
请注意“类型”和“DB2实例和分区”按照上图选择;
4、在“命令脚本”tab页中输入脚本;
BACKUP DATABASE JM_DAJ ONLINE TO "D:\\DB2_BAK" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 COMPRESS INCLUDE LOGS WITHOUT PROMPTING;
意思是把数据库JM_DAJ压缩备份到D:\\DB2_BAK目录下(前提是D:\\DB2_BAK目录已存在)
5、进入到“安排”tab页面;
添加一个时间起始点,选择“重复安排”,如图所示,注意“运行时权限”也要填写,一般为administrator,密码为登陆windows系统时的密码,然后就可以点击“确定”按钮。
6、至此DB2的自动备份已设置完成,每天备份一次,到“D:\\DB2_BAK”目录下找备份文件。
参考技术A这个你要建立两个windows定时任务了,定时调用备份脚本,增量备份建一个定时任务,全备份建一个定时任务。
具体备份脚本自己写一下,备份前要断开应用连接。
以下脚本供参考:是全备份的,建个定时任务:备份数据库.bat
追问这个和 在网上找到的一样,还没有试,不过应该行的!!等试过来后再来确认下!
参考技术B DB2备份分两类,在线和离线,在线备份允许应用连接,离线则必须断开应用,终止数据库。按楼主要求是在线备份,需要提的是,在线备份需要设置归档日志,就是日志需要定期清理。
BACKUP DATABASE SAMPLE ONLINE TO "/db2home/db2inst1/backup/fullbak/online" INCLUDE LOGS
以上命令即可进行在线备份,数据库默认是循环日志,必须改为归档日志
db2 update db cfg for SAMPLE using LOGARCHMETH1 "DISK:/db2home/archlog"
修改后需要进行一次离线全备份,这是必须操作
db2 CONNECT TO sample
db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
db2 UNQUIESCE DATABASE
db2 TERMINATE
db2 DEACTIVATE DATABASE sample
db2 BACKUP DATABASE SAMPLE TO "/db2home/db2inst1/backup/fullbak/offline"
全备份完毕,才能进行正常操作和后续的在线备份本回答被提问者和网友采纳
mysql定时备份脚本
创建备份目录:
mkdir /data/databak
创建脚本文件:
vi /data/databak/bak.sh
脚本代码:
db_user="root" db_passwd="123456" db_name="qak" # the directory for story your backup file.you shall change this dir backup_dir="/data/databak" # date format for backup file (dd-mm-yyyy) time="$(date +"%Y%m%d%H%M%S")" mysqldump -u$db_user -p$db_passwd $db_name > "$backup_dir/$db_name"_"$time.sql"
添加权限:
chmod -R 777 /data/databak/bak.sh
添加定时任(每天2点执行):
crontab -e
2 * * * /data/databak/bak.sh
以上是关于db2定时备份方法,的主要内容,如果未能解决你的问题,请参考以下文章