暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DB2数据库备份

原创 bingo 2023-02-11
789

在线备份整个数据库

db2inst4@BI-DEV:~> db2 backup db aismart2 online to /db2fs05 include logs

注意:在线备份要求日志是归档模式,在线备份时最好不要执行其他运维任务,比如runstats等。否则可能会出现锁竞争而回滚的情况。


如果下面错误:

SQL2413N Online backup is not allowed because the database is not recoverable

or a backup pending condition is in effect.

原因:数据库在线备份需要启用归档日志功能,该数据库未启用。


备份指定的表空间

db2inst4@BI-DEV:~> db2 "backup db aismart2 tablespace(SYSCATSPACE,USERSPACE1) online to /db2fs05"


增量备份

db2inst4@BI-DEV:~> db2 backup db aismart2 --做离线完全备份

db2inst4@BI-DEV:~> db2 backup db aismart2 online incremental delta

--在线增量迭代备份

db2inst4@BI-DEV:~> db2 backup db aismart2 online incremental

--在线增量备份



备份文件命名规则

0

备份类型:0代表全备,3代表表空间备份,4代表Load COPY备份。

单分区环境:分区节点号固定为NODE0000

编目节点:固定为CATN0000


检查备份文件的有效性

db2inst2@BI-DB2:~> db2ckbkp -h /data/backup_portal/PORTAL82.0.db2inst2.DBPART000.20220114215003.001

db2inst2@BI-DB2:~> db2ckbkp -h -a /data/backup_portal/PORTAL82.0.db2inst2.DBPART000.20220114215003.001|grep -i "File Number" --检查需要前滚的日志文件


备份监控

db2inst4@BI-DEV:~> db2 list utilities show detail

通过执行时间和监控时间,大致估算完成整个备份需要的时间



数据库恢复

当目录中有多个备份介质的时候,必须指定taken at来确定哪个备份文件

db2inst2@BI-DB2:~> db2ckbkp -h /data/backup_portal/PORTAL82.0.db2inst2.DBPART000.20220114215003.001 --找到对应的时间戳

db2inst2@BI-DB2:~> db2 restore db PORTAL82 from /data/backup_portal/ taken a 20220114215003

BI-DB2:/data/backup_portal # db2 rollforward db PORTAL82 to end of backup and stop


表空间恢复

可以从数据库备份(需要启用了归档日志模式)或表空间备份中恢复表空间。恢复时,正在恢复的表空间不可访问,指定online选项后,用户可以连接数据库,并访问其余表空间。表空间恢复后,会处于rollforward-pending状态,需要前滚到表空间最小恢复时间点。

db2inst2@BI-DB2:~> db2 "restore db PORTAL82 tablespace (USERSPACE1) online from /data/backup_portal/ taken at 20220114215003"


增量备份和恢复

备份策略为:周末做离线完全备份,然后周一、周二做迭代增量备份(delta),周三做增量备份,周四、周五做迭代增量,周六做增量备份

--周日做离线完整备份

db2inst4@BI-DEV:~> db2 backup db AISMART2

--周一做迭代增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental delta

--周二做迭代增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental delta

--周三做增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental

--周四做迭代增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental delta

--周五做做迭代增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental delta

--周六做增量

db2inst4@BI-DEV:~> db2 backup db AISMART2 online incremental


如果要恢复到周五,可以通过incremental automatic taken at<周五时间戳>,automatic选项自动按照顺序进行恢复。

db2inst4@BI-DEV:~> db2 restore db AISMART2 incremental automatic taken at 20220114215003 --要在备份文件所在的目录下

--查看恢复历史文件产生恢复顺序

db2inst4@BI-DEV:~> db2ckrst -d AISMART2 -t 20220114215003 -r database


恢复到另外一个数据库目录或存储路径

0

指定DBPATH ON /data/db2data,如果目标库不存在,那么会将数据库目录存在/data/db2data,但自动存储路径不变。如果目标库存在,则忽略DBPATH ON。

[db2inst1@node1 ~]$ cd /tmp/ --进入备份文件存放路径

[db2inst1@node1 tmp]$ db2 "restore db PORTAL82 dbpath on /data/db2data"

--恢复数据库











































「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论