关闭

DB2数据库备份恢复小结

218人阅读 评论(0) 收藏 举报
分类:

一、离线全备

在控制台进入到DB2的BIN目录如:(D:/Program Files/IBM/SQLLIB/BIN),执行DB2 CONNECT TO DATABASE_NAME,
这时可能会出现“db2 未初始化命令行环境”的错误,既然是未初始化命令行环境,那么初始化命令行环境,即:DB2CMD;

①     连接一个已建立好的数据库,做一个离线的全备。
命令:DB2 CONNECT TO DATABASE_NAME
这时会显示数据库连接信息。
②     显示数据库应用状态:
       命令:DB2 LIST APPLICATIONS
③     停掉数据库应用:
       命令:DB2 FORCE APPLICATIONS ALL
④     做离线(全备)备份:
       命令:DB2 BACKUP DATABASE DATABASE_NAME TO E:
说明:将数据库DATABASE_NAME备份到E:盘
⑤     查看备份历史记录:
       命令:DB2 LIST HISTORY BACKUP ALL FOR DATABASE_NAME
二、在线的备份
如果要做在线的备份,要对两个参数做修改:USEREXIT和LOGRETAIN,将其修改为ON,他们默认是OFF的,默认使用循环日志模式,修改完参数后,
可以变为归档日志模式,启用了userexit做数据库日志的归档。
①     设置参数:userexit
命令:DB2 UPDATE DB CFG FOR DATABASE_NAME USING USEREXIT ON
②     设置参数:logretain
命令:DB2 UPDATE DB CFG FOR DATABASE_NAME USING LOGRETAIN ON
③     停掉应用:
命令:DB2 FORCE APPLICATION ALL
先做一次离线全备份,否则是backup pending状态的,因此在做离线全备前,先连接数据库
命令:DB2 CONNECT TO DATABASE_NAME (此时不可连接)
④     列出所有的应用:
命令:DB2 LIST APPLICATIONS
⑤     进行在线的全备份:
命令:
DB2 BACKUP DATABASE DATABASE_NAME ONLINE TO E:
说明:E:表示备份文件备份的位置
⑥     修改参数,使数据库能够做到增量备份,必须修改trackmod为on状态,并有一次完全备份
命令:DB2 UPDATE DB CFG FOR DATABASE_NAME USING TRACKMOD YES
⑦     停掉数据库应用:
       命令:DB2 FORCE APPLICATION ALL
⑧     备份数据库:
       命令:DB2 BACKUP DATABASE DATABASE_NAME TO E:
       (全备份,E:表示将备份,备份到E盘)
⑨     在线的差异备份,也可以用增量备份:
       命令:DB2 BACKUP DATABASE DATABASE_NAME ONLINE INCREMENTAL DELTA TO E:
       连接数据库:
       命令:DB2 CONNECT TO DATABASE_NAME
       再次查看当前的数据库状态:

       命令:DB2 GET DB CFG

 三、恢复完全备份

①     查看备份历史记录:
       命令:DB2 LIST HISTORY BACKUP ALL FOR DATABASE_NAME
②     恢复某个时间点的数据
       命令:DB2 RESTORY DATABASE DATABASE_NAME FROM E: TAKEN AT DATE_TIME
       说明:DATABASE_NAME—数据库名称;E:--表示备份文件的位置;DATE_TIME—备份的时间戳
③     回滚到日志结束:
       命令:DB2 ROLLFORWARD DATABASE_NAME TO END OF LOGS AND STOP
四、恢复增量备份数据
①     连接数据库
命令:DB2 CONNECT TO DATABASE_NAME
②     查看所有应用
命令:DB2 LIST APPLICATIONS
③     停掉所有应用:
命令:DB2 FORCE APPLICATION ALL
④     恢复增量备份
命令:DB2 RESTORE DATABASE DATABASE_NAME INCREMENTAL AUTOMATIC FROM E: TAKEN AT DATE_TIME
说明:DATABASE_NAME—数据库名称; E:--备份文件位置;DATE_TIME—增量备份时间戳
⑤     回滚到日志结束:
命令:DB2 ROLLFORWARD DATABASE DATABASE_NAME TO END ON LOGS AND STOP
 
问题:当将备份文件删除后,怎样删除数据库的备份记录信息?
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6961次
    • 积分:209
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:1篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论