DB2 重定向恢复数据库_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1575 | 回复: 0   主题: DB2 重定向恢复数据库        下一篇 
tk
注册用户
等级:中士
经验:207
发帖:80
精华:0
注册:2011-10-19
状态:离线
发送短消息息给tk 加好友    发送短消息息给tk 发消息
发表于: IP:您无权察看 2015-4-29 10:14:20 | [全部帖] [楼主帖] 楼主

数据库恢复操作使用数据库备份映象来重新创建数据库。如果要将数据库从一台机器克隆到另一台,最简单的方法就是从备份映象恢复数据库。数据库使用的文件系统路径也包含在备份映象中。因此,除非源系统上的数据库引用的文件系统和物理设备与目标系统的设置方法完全相同,否则就需要执行 重定向恢复

操作。

重定向恢复操作包括两步数据库恢复过程,并且中间有一个表空间容器定义步骤:

  1.  REDIRECT 

    选项发出

     RESTORE DATABASE 命令。

  2. 使用 SET TABLESPACE CONTAINERS 

    命令来定义被恢复的数据库的表空间容器(

    DB2 需要知道您想要让表空间驻留在目标系统上的什么位置)。

  3. 再次发出 RESTORE DATABASE 

    命令,这次指定

     CONTINUE 选项。



1.

新建实例

myinst

,并设置系统当前实例为

myinst

C:>db2 get instance


当前数据库管理器实例是:DB2

C:>db2icrt myinst


DB20000IDB2ICRT 命令成功完成。

C:>set db2instance=myinst
C:>db2 get instance


当前数据库管理器实例是:MYINST

2.获得重定向恢复数据库的脚步

C:> db2 restore db testdbfrom 'e:' taken at 20110411031305 on 'e:db2' into testdbredirect generate script redirect_testdb.sql


3.根据具体需求脚步修改容器路径

例如:SET TABLESPACE CONTAINERS FOR 0USING (PATH   'SQLT0000.0');

改为:SET TABLESPACE CONTAINERS FOR 0USING (PATH'E:db2SQLT0000.0');

4.执行相关语句,可以分步执行

5.再次恢复数据库,对应步骤4

C:>db2 restore database testdb continue


6.验证是否正确地为所恢复的数据库建立了目录,以及为它定义的表空间容器是否真正与所恢复的数据库相关: 

db2 list db directory db2 connect to testdb
db2 list tablespace containers for 0 db2 list tablespace containers for 1 db2 list tablespace containers for 2 db2 connect reset db2 terminate 

附录:redirect_testdb.sql

*****************************************************************************
-- ** 自动创建了重定向复原脚本
-- *****************************************************************************
UPDATE COMMAND OPTIONS USING S ON Z ON testdb_NODE0000.out V ON;
SET CLIENT ATTACH_DBPARTITIONNUM  0;
SET CLIENT CONNECT_DBPARTITIONNUM 0;
-- *****************************************************************************
-- ** 自动创建了重定向复原脚本
-- *****************************************************************************
RESTORE DATABASE testdb
-- USER  <用户名>
-- USING '<密码>'
FROM 'e:'
TAKEN AT 20110411031305
DBPATH ON '<目标目录>'
INTO testdb
-- NEWLOGPATH 'D:DB2NODE0000SQL00001SQLOGDIR'
-- WITH <缓冲区数目> BUFFERS
-- BUFFER <缓冲区大小>
-- REPLACE HISTORY FILE
-- REPLACE EXISTING
REDIRECT
-- PARALLELISM <n>
WITHOUT ROLLING FORWARD
-- WITHOUT PROMPTING
;
-- *****************************************************************************
-- ** 表空间定义
-- *****************************************************************************
-- *****************************************************************************
-- ** 表空间名                          = SYSCATSPACE
-- **   表空间标识                        = 0
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 11443
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 0
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2SQLT0000.0');
-- *****************************************************************************
-- ** 表空间名                          = TEMPSPACE1
-- **   表空间标识                        = 1
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 系统临时数据                      
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 0
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 1
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2SQLT0001.0');
-- *****************************************************************************
-- ** 表空间名                          = USERSPACE1
-- **   表空间标识                        = 2
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 24915
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 2
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2SQLT0002.0');
-- *****************************************************************************
-- ** 表空间名                          = USERTOOLSTMPPACE
-- **   表空间标识                        = 3
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 用户临时数据                      
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 16
-- **   使用自动存储器                = 否     
-- **   页总数                            = 0
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 3
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2DB2DATAUSERSPACE001');
-- *****************************************************************************
-- ** 表空间名                          = TSASNUOW
-- **   表空间标识                        = 4
-- **   表空间类型                        = 数据库管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   启用自动调整大小              = 否     
-- **   页总数                            = 389888
-- **   可用页数                          = 389792
-- **   高水位标记(页)                  = 73760
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 4
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING (
FILE   'D:DB2DATATSASNUOW'                   5888
, FILE   'D:DB2DATATSASNUOW.DAT'               128000
, FILE   'D:DB2DATATSASNUOW2.DAT'              256000
);
-- *****************************************************************************
-- ** 表空间名                          = TSASNAA
-- **   表空间标识                        = 5
-- **   表空间类型                        = 数据库管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   启用自动调整大小              = 否     
-- **   页总数                            = 56320
-- **   可用页数                          = 56256
-- **   高水位标记(页)                  = 1888
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 5
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING (
FILE    'D:DB2DATATSASNAA'                                       5120
, FILE   'D:DB2DATATSASNAA.DAT'                                    51200
);
-- *****************************************************************************
-- ** 表空间名                          = TSCDA35_SYSTEMPARA
-- **   表空间标识                        = 6
-- **   表空间类型                        = 数据库管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   启用自动调整大小              = 否     
-- **   页总数                            = 512
-- **   可用页数                          = 480
-- **   高水位标记(页)                  = 288
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 6
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING (
FILE   'e:db2SYSTEMPARA'               512
);
-- *****************************************************************************
-- ** 表空间名                          = SYSTOOLSPACE
-- **   表空间标识                        = 7
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 4096
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 126
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 7
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2SYSTOOLSPACE');
-- *****************************************************************************
-- ** 表空间名                          = TBSP32K0000
-- **   表空间标识                        = 8
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 所有持久数据。常规表空间。
-- **   表空间页大小(以字节计)          = 32768
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 270
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 8
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2TBSP32K0000');
-- *****************************************************************************
-- ** 表空间名                          = TBSP32KTMP0000
-- **   表空间标识                        = 9
-- **   表空间类型                        = 系统管理空间                     
-- **   表空间内容类型                    = 系统临时数据                      
-- **   表空间页大小(以字节计)          = 32768
-- **   表空间扩展数据块大小(以页计)    = 32
-- **   使用自动存储器                = 否     
-- **   页总数                            = 0
-- *****************************************************************************
SET TABLESPACE CONTAINERS FOR 9
-- IGNORE ROLLFORWARD CONTAINER OPERATIONS
USING ( PATH  'E:DB2TBSP32KTMP0000');
-- *****************************************************************************
-- ** 启动已重定向的复原
-- *****************************************************************************
RESTORE DATABASE testdb CONTINUE;
-- *****************************************************************************
-- ** 文件末尾
-- *****************************************************************************


--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论