赛迪网 > IT技术 数据库 > DB2开发者园地
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

DB2在线增量备份 还原增量备份及前滚恢复

发布时间:2008.06.05 04:53     来源:赛迪网    作者:Andre

【赛迪网-IT技术报道】说明:在线增量备份前提:

1、更改数据库参数 logretain, userexit, trackmod 为 on

2、更改参数之后完全离线备份数据库一次

3、之后就可以进行在线、在线增量备份了

测试结果通过,脚本如下。

重要!数据库归档日志必须按时备份至另一个地方,本例中为 C:\TESTDB.0\SQLOGDIR

------------------------------------------------------------------------

C:\Documents and Settings\Administrator>cd\

C:\>db2 drop db TestDB

DB20000I DROP DATABASE 命令成功完成。

C:\>db2 create db TestDB

DB20000I CREATE DATABASE 命令成功完成。

C:\>db2 connect to TestDB

数据库连接信息

数据库服务器 = DB2/NT 8.2.0

SQL 授权标识 = ADMINIST...

本地数据库别名 = TESTDB

修改数据库参数,使之支持在线联机备份

C:\>db2 update db cfg using logretain on userexit on trackmod on

DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。

SQL1363W 为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所

有应用程序都与此数据库断开连接之后,更改才会生效。

执行增量、在线备份之前必须执行离线全备份一次

C:\>db2 backup db TestDB

备份成功。此备份映像的时间戳记是:20070419144951

C:\>db2 connect to TestDB

数据库连接信息

数据库服务器 = DB2/NT 8.2.0

SQL 授权标识 = ADMINIST...

本地数据库别名 = TESTDB

创建测试表,并插入测试数据

C:\>db2 create table T1(C1 int)

DB20000I SQL 命令成功完成。

C:\>db2 insert into T1(C1) values (1)

DB20000I SQL 命令成功完成。

执行在线增量数据库备份

C:\>db2 backup db TestDB online incremental

备份成功。此备份映像的时间戳记是:20070419145112

模拟灾难,删除数据库!(注意,此前一定要将归档日志文件备份至另一个路径,保存好)

C:\>db2 drop db TestDB

DB20000I DROP DATABASE 命令成功完成。

根据在线增量备份恢复数据库

C:\>db2 restore db TestDB incremental automatic from "c:" taken at 2007041914511

2

DB20000I RESTORE DATABASE 命令成功完成。

恢复后的数据库处于前滚暂挂状态,不可用

C:\>db2 connect to TestDB

SQL1117N 由于 ROLL-FORWARD PENDING,不能连接或激活数据库 "TESTDB"。

SQLSTATE=57019

前滚数据库,并指定归档日志位置,重要!

C:\>db2 ROLLFORWARD DATABASE TESTDB TO END OF LOGS AND COMPLETE OVERFLOW LOG PAT

H ("C:\TESTDB.0\SQLOGDIR")

前滚状态

输入数据库别名 = TESTDB

节点数已返回状态 = 1

节点号 = 0

前滚状态 = 未暂挂

下一个要读取的日志文件 =

已处理的日志文件 = S0000001.LOG - S0000001.LOG

上次落实的事务 = 2007-04-19-06.51.22.000000

DB20000I ROLLFORWARD 命令成功完成。

恢复据库完成,前滚完成,查询测试数据

C:\>db2 connect to TestDB

数据库连接信息

数据库服务器 = DB2/NT 8.2.0

SQL 授权标识 = ADMINIST...

本地数据库别名 = TESTDB

C:\>db2 select * from T1

C1

-----------

1

1 条记录已选择。

测试全部正常,退出

C:\>db2 connect reset

DB20000I SQL 命令成功完成。

C:\>db2 terminate

DB20000I TERMINATE 命令成功完成。(责任编辑:卢兆林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· DB2数据库完整性暂挂SQL0668N的错误案例 (06-04) · 用一个实例讲解DB2数据库游标循环的问题 (05-28)
· DB2数据库锁等待的相关问题 (05-28) · 快速解决DB2创建存储过程时所遇到的错误 (05-27)
· DB2数据库中如何实现Oracle的某些功能 (05-15) · 实例讲解DB2数据库性能监控的具体步骤 (05-15)
· DB2数据库创建存储过程时遇到的错误现象 (05-14) · IBM DB2跨平台数据库迁移步骤和注意事项 (05-14)
· 在Linux平台下进行DB2数据库的迁移 (05-14) · 一则DB2数据库重定向表空间的恢复案例 (05-12)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 电子商务盈利新招:垂直化渠道管理新趋势
· 互联网加速蜕变 运营商进军搅动市场格局
· 08 IT技术风起云涌 专访 ITIL落地难在哪
· 视频加密保护解决方案 文档安全解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统