以下的文章主要描述的是DB2实施备份时应作的事项,我们说的是单纯DB2数据库的备份,如果想要双机实时热备份得用它专门的软件才行,一般的情况下用的都是backup命令,以下就是具体方案的描述,希望在你今后的学习中会有所帮助。
包括DB2 backup database 数据库名和DB2 restore database 数据库名以下是常用操作命令DB2离线和在线全备、增量DB2实施备份及恢复的操作步骤:
1、离线全备份
1)、首先确保没有用户使用DB2:
- $DB2 list applications for db sample
2)、停掉数据库并重新启动,以便断掉所有连接: DB2stop force
- DB2start
3)、执行备份命令:(使用TSM作为DB2实施备份的介质) DB2 backup db sample use tsm
备份成功,将会返回一个时间戳。
4)、检查备份成功: DB2 list history backup all for sample ,可以看到多了这个备份的纪录。 DB2adutl query命令也可以看到返回值。 5)、备注: 首先对主节点(catalog表空间在的节点)执行备份命令,再对另外的节点也做这个操作。 2、 在线备份: 1)、首先打开一下支持在线备份的数据库配置参数: DB2 update db cfg for sample
- using userexit on
启用用户出口
- DB2 update db cfg for sample using logretain on
启用归档日志 DB2 update db cfg for sample using trackmod on
启用增量备份功能 (需要各个Node都分别做设置)
开启这些参数后,数据库处于backup pending状态,要求做数据库的离线全备份。做一下离线全备份,参考上面的命令。
2)、在线备份命令如下:
- DB2 backup db sample online use tsm
备份成功,返回一个时间戳。
3)、同样可以用DB2adutl 和DB2 list history察看备份纪录。
4)、备注: 同样,对每个节点都做这个操作。
3、 在线增量备份 1
)、在开启了必须的三个参数的情况下,做增量备份:
- DB2 backup db sample online incremental use tsm
备份成功,返回一个时间戳。
2)、同样可以用DB2adutl 和DB2 list history察看备份纪录。
3)、还有一种delta的备份: DB2 backup db sample online incremental delta use tsm
这两种备份的区别,类似Oracle Exports的Incremental和Cumulative方式,DB2的incremental对应oracle的cumulative方式,而DB2的delta方式则对应oracle的incremental方式。 4)、备注:同样,对每个节点都做这个操作。
4、 恢复数据库
1)、手工drop数据库,模拟灾难恢复的情况,执行如下操作: DB2 drop db sample
2)、恢复备份历史纪录(每次backup,不论类型,都会备份历史纪录文件)。这里的时间戳应该是最新的: DB2 restore db sample history file use tsm taken at 20030102223107 buffer 100
3)、使用DB2的恢复帮助工具: DB2ckrst -d sample -t 20030101224424 -r database 转某作者
【编辑推荐】