·天新网首页·加入收藏·设为首页
首页|笔记本|手机|数码相机|摄像机|MP3/MP4|主板|内存|显示器|办公|打印机|下载|开发|汽车|学院|业界
硬件|台式机|数码|数字家庭|投影仪|GPS/CPU|显卡|硬盘|服务器|网络|一体机|驱动|源码|游戏|考试|报价
您现在的位置:天新网 > 软件开发 > 数据库开发 > IBM DB2
DB2在线增量备份 还原增量备份及前滚恢复
http://dev.21tx.com 2008年06月05日 赛迪网 Andre

  说明:在线增量备份前提:

  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数据库使用重定向恢复示例
下一篇: UNIX环境下手动安装DB2数据库的详细步骤

英特尔 酷睿(TM)2双核,送指纹识别器一个,再赠两份好礼,请电800-858-2418

Google
 
热点文章
关于我们 | 联系我们 | 广告服务 | 工作机会 | 版权声明 | 欢迎投稿 | 网站地图
Copyright © 2000-2008 , www.21tx.com , All Rights Reserved .
晨新科技 版权所有 Created by TXSite.net