db2数据库重定向恢复整理

什么情况下使用重定向?

数据库复原操作将使用数据库备份映像来重新创建数据库。
在下列任何情况下,请使用重定向复原操作:
  • 如果要将备份映像复原到不同于源机器的目标机器
  • 如果要将表空间容器复原到另一个物理位置
  • 如果复原操作由于一个或多个容器不可访问而失败
  • 如果要重新定义已定义的存储器组的路径
限制:
不能使用重定向复原操作将数据从一个操作系统移至另一个操作系统。
不能在复原过程中创建或删除存储器组。
不能在表空间复原过程中修改存储器组路径,即使正在复原与存储器组相关联的所有表空间时也是如此。


自动生成重定向恢复脚本以及重定向恢复状态查询

DB2 提供了命令,供用户从一次数据库备份文件中提取数据库重定向恢复脚本。示例如下,其中 /db2_backup/db2inst1/sample 是数据库备份文件所在的目录,20101023180128 是数据库备份文件的时间戳。
db2 restore db sample from /db2_backup/db2inst1/sample taken at 20101023180128
 redirect generate script redirect_sample.sql 
 DB20000I The RESTORE DATABASE command completed successfully.
所生成的重定向文件 redirect_sample.sql,可以分为三个部分:

1. Restore 语句

此语句用来标示一个重定向的恢复操作命令开始,它在普通恢复的命令上加了 redirect 参数。

RESTORE DATABASE SAMPLE 
 FROM '/db2_backup/db2inst1/sample'
 TAKEN AT 20101023180128 
 INTO SAMPLE 
 REDIRECT;

2. set containers 语句:

当目标数据库所的物理存储设备与原来的数据库不一样时,就需要下面的命令来指定新的物理容器。

SET TABLESPACE CONTAINERS FOR 0 
 USING ( 
  PATH '/db2inst1/SAMPLE'
 ); 
 SET TABLESPACE CONTAINERS FOR 1 
 USING ( 
  PATH '/ db2inst1/temp'
 ); 
 SET TABLESPACE CONTAINERS FOR 2 
 USING ( 
  DEVICE '/dev/rsample_1G' 131072 
 ); 
……
小提示:
开新窗口
查看新库的应用目录方法
DB2 GET DB CFG FOR 新库名

从被(部分地)恢复的新数据库中查看表空间信息:  
DB2 LIST TABLESPACES SHOW DETAIL

3. restore continue 语句:

此语句代表重定向恢复语句序列完成,系统开始恢复数据库。

RESTORE DATABASE SAMPLE CONTINUE;


注:

执行第2步时报:

SQL20319N

不允许在自动存储器表空间上执行 SET TABLESPACE CONTAINERS 命令。

说明

与自动存储器表空间相关联的容器受数据库的控制,不能通过 SET TABLESPACE CONTAINERS 命令重新定义。

用户响应

要对数据库中的所有自动存储器表空间指定一组新的路径,可使用 RESTORE DATABASE 命令的 ON 选项并指定一个或多个路径;或将其改为非自动。

如:db2 restore datatbase dbname from '/home/db2admin' taken at20101023180128 on '/home/db2adinst1' into dbnewname redirect


 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值