查看: 11675|回复: 14

[Tips] DB2 V9 使用表空间备份重建可恢复数据库实战

[复制链接]
论坛徽章:
1
2010新春纪念徽章
日期:2010-01-04 08:33:08
跳转到指定楼层
1#
发表于 2007-4-6 03:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
什么是数据库重建?

数据库重建功能是由恢复实用程序提供的。它允许使用一组备份镜像重建一个全新的数据库。您可以选择重建整个数据库,或者重建一个只包含原来数据库中部分表空间的数据库。数据库重建过程取决于数据库是可恢复的还是不可恢复的。

对于可恢复数据库,重建实用程序允许只使用表空间备份重建整个数据库。这里不需要完整数据库备份。完整数据库备份可能需要更大的维护窗口,对于高可用性环境,这样会增加调度的难度。使用表空间备份重建数据库的能力对于可用性和可恢复性来说是个很好的增强。

假设您有一个名为 TEST 的可恢复数据库。某天夜里,出现了一次停电事故。数据库所在的磁盘遭到了损坏。数据库再也不能访问了,于是您想恢复数据库。该数据库有以下表空间:
SYSCATSPACE(系统编目)
USERSPACE1(用户数据表空间)
USERSPACE2(用户数据表空间)
USERSPACE3(用户数据表空间)
您可以用的还有:
所有日志文件。由于日志与数据库存储在不同的磁盘上,因此它们能够幸免于难。
您没有任何数据库级的备份,但是有以下表空间备份:

TEST.3.DB2.NODE0000.CATN0000.20070406031106

TEST.3.DB2.NODE0000.CATN0000.20070406031111

TEST.3.DB2.NODE0000.CATN0000.20070406031116

TEST.3.DB2.NODE0000.CATN0000.20070406031149

如果我们使用恢复和前滚方法将数据库恢复到最近的一个时间点,那么我们需要恢复一个数据库备份,然后将数据库前滚到日志的最后。不幸的是,在这种情况下,这是不可能实现的,因为我们没有数据库备份。我们只有表空间备份。如果在任何一个表空间备份上运行一个常见的 RESTORE 命令,那么将得到以下错误:db2 restore db test taken at 20070406031149
SQL2560N The target database is not identical to the source database for a restore
from a table space level backup.

有了数据库重建功能,现在可以只用表空间备份和日志重建 TEST 数据库。要重建一个数据库,可以在 RESTORE DATABASE 命令中指定 REBUILD 选项。

下面的步骤将 TEST 数据库重建到最近的时间点。


详细实施步骤:
D:\tbps>db2level
DB21085I  Instance "DB2" uses "32" bits and DB2 code release "SQL09010" with level identifier "02010107".
Informational tokens are "DB2 v9.1.0.356", "s060629", "NT32", and Fix Pack "0".
Product is installed at "C:\PROGRA~1\IBM\SQLLIB" with DB2 Copy Name "DB2COPY1".

一、创建测试数据库 test

D:\tbps>db2 "create db test on d:"

二、创建表空间

D:\tbps>db2 connect to test

D:\tbps>db2 "create tablespace userspace2 managed by database using (file 'd:\tbps\tbps2' 1000) "

D:\tbps>db2 "create tablespace userspace3 managed by database using (file 'd:\tbps\tbps3' 1000) "

三、修改 LOGARCHMETH1 使数据库处于归档模式
D:\tbps>db2 update db cfg using LOGARCHMETH1 disk:d:\tbps

四、脱机备份数据库

D:\tbps>db2 backup db test   //因为修改了上面的参数,数据库必须进行备份才能进行下面的步骤^_^

五、分别单独备份表空间

D:\tbps>db2 "BACKUP DATABASE test" TABLESPACE  syscatspace  to 'd:\tbps\'
D:\tbps>db2 "BACKUP DATABASE test" TABLESPACE  userspace1   to 'd:\tbps\'
D:\tbps>db2 "BACKUP DATABASE test" TABLESPACE  userspace2   to 'd:\tbps\'
D:\tbps>db2 "BACKUP DATABASE test" TABLESPACE  userspace3   to 'd:\tbps\'
=========================================================================================
D:\>db2 backup db test

Backup successful. The timestamp for this backup image is : 20070406031059

D:\>db2 "BACKUP DATABASE test" TABLESPACE  syscatspace  to 'd:\tbps\'

Backup successful. The timestamp for this backup image is : 20070406031106

D:\>db2 "BACKUP DATABASE test" TABLESPACE  userspace1  to 'd:\tbps\'

Backup successful. The timestamp for this backup image is : 20070406031111

D:\>db2 "BACKUP DATABASE test" TABLESPACE  userspace2  to 'd:\tbps\'

Backup successful. The timestamp for this backup image is : 20070406031116

D:\>db2 "BACKUP DATABASE test" TABLESPACE  userspace3  to 'd:\tbps\'

Backup successful. The timestamp for this backup image is : 20070406031149
=========================================================================================

D:\tbps>db2 restore db test rebuild with all tablespaces in database taken at 20070406031149

D:\tbps>db2 rollforward db test to end of logs

D:\tbps>db2 rollforward db test stop

D:\tbps>db2 connect to test

Database Connection Information

Database server                = DB2/NT 9.1.0
SQL authorization ID        = ERIC_XU
Local database alias           = TEST

ok 重建成功 ^_^ !
论坛徽章:
233
天枰座
日期:2016-02-02 09:36:332012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41灰彻蛋
日期:2011-06-22 19:28:30现任管理团队成员
日期:2011-05-07 01:45:082010广州亚运会纪念徽章:拳击
日期:2011-04-08 16:56:552011新春纪念徽章
日期:2011-02-18 11:43:332011新春纪念徽章
日期:2011-01-25 15:42:562011新春纪念徽章
日期:2011-01-25 15:42:332011新春纪念徽章
日期:2011-01-25 15:42:15
2#
发表于 2007-4-6 13:09 | 只看该作者
good

使用道具 举报

回复
论坛徽章:
0
3#
发表于 2007-7-2 20:23 | 只看该作者
关注中

使用道具 举报

回复
论坛徽章:
1
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
4#
发表于 2007-7-2 23:43 | 只看该作者
good

使用道具 举报

回复
论坛徽章:
0
5#
发表于 2008-7-18 12:08 | 只看该作者
过来学习下

使用道具 举报

回复
论坛徽章:
2
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44生肖徽章2007版:猪
日期:2007-11-01 16:55:07
6#
发表于 2008-7-18 14:07 | 只看该作者
Eric_xu ?

难道是他?呵呵

使用道具 举报

回复
招聘 : Linux运维
论坛徽章:
235
紫蜘蛛
日期:2007-09-26 17:05:46玉兔
日期:2007-09-26 17:05:05现任管理团队成员
日期:2011-05-07 01:45:08玉兔
日期:2006-08-29 20:38:48紫蜘蛛
日期:2007-09-26 17:05:34阿斯顿马丁
日期:2013-11-19 10:38:16奔驰
日期:2013-10-16 09:08:58红旗
日期:2014-01-09 11:57:39路虎
日期:2013-08-13 14:52:35林肯
日期:2015-05-19 13:01:16
7#
发表于 2008-7-18 17:47 | 只看该作者
原帖由 banker 于 2008-7-18 14:07 发表
Eric_xu ?

难道是他?呵呵



徐霞客!!?

使用道具 举报

回复
论坛徽章:
42
ITPUB元老
日期:2005-09-09 13:45:35马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14优秀写手
日期:2013-12-18 09:29:09ITPUB 11周年纪念徽章
日期:2012-10-09 18:03:32版主3段
日期:2012-05-15 15:24:112012新春纪念徽章
日期:2012-02-13 15:13:362012新春纪念徽章
日期:2012-02-13 15:13:36
8#
发表于 2009-6-16 14:03 | 只看该作者
不错不错

使用道具 举报

回复
求职 : 数据库管理员
论坛徽章:
186
授权会员
日期:2008-07-27 22:25:202014年新春福章
日期:2014-02-18 16:42:02马上有房
日期:2014-02-18 16:42:02马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14版主4段
日期:2015-02-26 02:21:03慢羊羊
日期:2015-03-04 14:51:35
9#
发表于 2009-6-16 14:10 | 只看该作者
原帖由 myfriend2010 于 2008-7-18 17:47 发表



徐霞客!!?

这能联系的上?

使用道具 举报

回复
论坛徽章:
1
2009日食纪念
日期:2009-07-22 09:30:00
10#
发表于 2009-6-16 14:15 | 只看该作者
学习。。。。。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表