如何使用重定向恢复操作克隆DB2数据库

作者:夏果果  来源:IT165收集  发布日期:2011-09-02 08:34:45

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

  提示:如果有DB2 V8,就可以从任何高位优先服务器获取备份,并将它恢复到任何其它高位优先服务器。例如,您可以将备份映象从 DB2 for HP-UX 恢复到 DB2 for AIX® 或 Sun Solaris。但是,这并不适用于 Windows 和 Linux

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

  带REDIRECT选项发出 RESTORE DATABASE 命令。

  使用 SET TABLESPACE CONTAINERS 命令来定义被恢复的数据库的表空间容器(DB2需要知道您想要让表空间驻留在目标系统上的什么位置)。

  再次发出 RESTORE DATABASE 命令,这次指定 CONTINUE 选项。

  整个重定向恢复操作必须在同一个会话中调用;否则,将返回 SQL0900N,恢复操作会失败,记住这一点很重要。确保不会发生这种情况的一个方法是创建并运行包含重定向恢复过程中全部三部分的脚本。

  以下(Windows)示例显示了如何成功地执行重定向恢复操作。我将演示如何从不同的 实例恢复备份映象,而不是从另一台 服务器恢复备份映象。原理相同,细节也一样。

  本示例中的源实例名为 PROD。目标实例名为 MYINST。将要在 MYINST 上被恢复(创建)的 PROD 上的现有数据库名为 MOVIES。MOVIES 数据库在 D 盘上。

  创建PROD上的 MOVIES 数据库的完整数据库备份映象:


    set DB2INSTANCE=PROD
  db2start
  db2 backup db movies

  这个映象的时间戳记是 20021006213640 ,该映象在 D:MOVIES.0PRODNODE0000CATN000020021006 中。DB2 在发出 BACKUP DATABASE 命令的目录中创建这个子目录树。

  在这个子目录树中,将会有一个表示实际备份映象的文件(213640.0)。文件名表示获取备份的时间。

  创建相似的路径(使用 MYINST 代替 PROD):

  md MOVIES.0MYINSTNODE0000CATN000020021006

  这是关键步骤:如果没有正确创建这个路径,后续的数据库恢复操作就会失败。如果正在将备份映象重新定位到另一台机器,那么在目标机器上创建上述路径(用适当的目标实例名代替 MYINST),并且将备份映象(在此案例中是 213640.0)复制到该目录。在为传送维护目录树时,也可以使用压缩工具将备份映象打包。

  启动 MYINST,然后调用重定向恢复操作的第一步。


    set DB2INSTANCE=MYINST
  db2start
  db2 restore db movies from d taken at 20021006213640 to d redirect

  如果从不包含备份映象的目录中调用 DATABASE RESTORE 命令,则必须指定 FROM 参数。TO 参数指定了目标数据库目录(只有在 Windows 操作系统上要指定盘符)。

Tag标签: 如何使用   重定向   恢复   操作   克隆   DB2  
  • 专题推荐

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规