db2数据库重定向恢复整理

来源:互联网 发布:数据新闻相关的比赛 编辑:程序博客网 时间:2024/04/29 06:58

什么情况下使用重定向?

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


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

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 0
原创粉丝点击