当前位置: 首页 > 图文教程 > 数据库 > DB2 > 备份恢复DB2数据库步骤

DB2
DB2常用傻瓜问题1000问(之四)
SQL Server性能分析参数
编程管理SQL SERVER的帐号
拷贝的SQL Server 7数据库的恢复方法
使用SQL Mail收发和自动处理邮件
善用 SELECT INTO 功能
数据库连接范例
WIN2000下使用SQL Server错误一例
数据访问-与数据库建立连接
用Oracle存储过程和Oracle WebServer制作动态站点
SQL Server7.0 Web資料搜尋技巧
MySQL服务器的启动与停止
MySQL数据目录结构(1)
MySQL数据目录结构(2)
MySQL数据库备份
MySQL用户管理
win 2000 安装 mysql-shareware-3.22.32-win
Microsoft SQLServer安装示例
Microsoft SQL Server 7.0 备份及恢复相关问题
Microsoft SQL Server 7.0数据库的创建与管理

备份恢复DB2数据库步骤


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 86 ::
收藏到网摘: n/a

  一、设置归档参数:

  1、db2 update db cfg for using mirrorlogpath /home/db2inst1/mirror_log/ //mirror log

  2、db2 get db cfg for //确认是否成功

  3、db2 update db cfg for using userexit on //启用用户出口

  4、db2 update db cfg for using logretain on //启用归档日志

  5、db2 update db cfg for using trackmod on //启用增量备份功能

  6、db2stop force

  7、db2start

  8、db2 backup db to /home/db2inst1/off_back //开始上面参数后,数据库处于backup pending状态,要求做数据库的离线备份,否则会提示SQL1116N错误。

  二、备份在线数据库

  9、db2 backup db online to /home/db2inst1/on_back/ //在线备份

  10、db2 backup db online incremental to /home/db2inst1/on_back/ //在线做增量备份

  11、db2 list history backup all for //查看备份记录

  12、db2 get db cfg for //查看log所在位置,cp到一个安全目录,供rollforward使用。

  13、db2stop force;db2start;db2 drop db //手工drop数据库,模拟灾难恢复的情况

  三、恢复在线数据库

  14、db2ckrst -d -t 20070608032820 -r database //帮助工具提示恢复

  15、db2 restore db incremental from /home/db2inst1/on_back taken at 20070608032820 //恢复数据文件

  先恢复完全备份,然后在恢复增量备份,不能自动寻找完全备份文件。

  16、db2 rollforward database to end of logs and complete overflow log path '(/home/db2inst1/log)' //前滚日志

  有一点不认同:“先恢复完全备份,然后在恢复增量备份”

  对于增量恢复,你的做法正好反了,你这样做的话,会收到SQL2574N的错误信息。

  在db2ckrst里面已经清楚的告诉你恢复的顺序。

  下面是测试备份镜像中包日志的备份和恢复的步骤:

  注:/home/db2inst1/on_back/ #为备份文件位置

  /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #为数据库的log位置,通过db2 get db cfg for 得到。

  10、 db2stop force;db2start;db2 drop db #模仿灾难发上,drop数据库。

  20、 db2 backup db online to /home/db2inst1/on_back/ include logs #备份带日志的镜像文件

  21、 db2 backup db online incremental to /home/db2inst1/on_back/ include logs #备份带日志的增量镜像文件

  30、 db2 RESTORE db incremental automatic FROM /home/db2inst1/on_back/ taken at 20070612070526 LOGTARGET /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #恢复时间戳在20070612070526的数据镜像和日志文件

  40、 db2 rollforward database to end of logs and complete //回滚log日志

  在“10”中已把数据库drop了,“20”中如何做online backup呢?

  注:/home/db2inst1/on_back/ #为备份文件位置

  /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #为数据库的log位置,通过db2 get db cfg for 得到。

  10、 db2 backup db online to /home/db2inst1/on_back/ include logs #备份带日志的镜像文件

  20、 db2 backup db online incremental to /home/db2inst1/on_back/ include logs #备份带日志的增量镜像文件

  30、db2stop force;db2start;db2 drop db #模仿灾难发上,drop数据库。

  40、 db2 RESTORE db incremental automatic FROM /home/db2inst1/on_back/ taken at 20070612070526 LOGTARGET /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #恢复时间戳在20070612070526的数据镜像和日志文件

  50、 db2 rollforward database to end of logs and complete //回滚log日志