使用DB2 Cloning Tool克隆主机DB2数据库

发表于:2008-3-14 13:50

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

        对DB2数据库进行数据复制的方法多种多样,本文主要介绍了一种使用快速磁盘复制技术(例如,FlashCopy等)对DB2数据进行克隆的方案。通过使用DB2 Cloning Tool,最大程度简化DB2数据库克隆过程中DBA所需进行的操作。使整个流程更加自动化。数据库管理员(DBA),或者DB2开发测试人员都能够从中获益,了解如何通过DB2 cloning tool快速简便的构建DB2测试环境。为应用程序的开发和测试提供有力的保障。
序言

        主机平台上的 DB2 数据库是性能优异,运行稳定,使用广泛的数据库解决方案。随着存储在主机 DB2 数据库中的数据量的不断增加,开发人员在测试新的基于主机 DB2 数据库的应用系统时,经常需要花费大量的精力和时间来搭建一个合格的主机 DB2 测试环境。这个测试 DB2 系统的结构必须和生成 DB2 系统的结构一致,并且测试环境中必须包含有相当的数据量,这样才能确保测试的准确性。

两种数据克隆技术

        一般而言,可以通过以下两种方法来将数据导入用于测试的 DB2 系统。

        1. 使用 UNLOAD 工具从生产 DB2 系统中卸载数据,然后使用 LOAD 工具装入测试 DB2 环境。这个方法的优点在于,灵活,操作简单。这个方法的主要问题在于所需的时间较长。

        2. 使用 FlashCopy 等磁盘复制技术,通过卷对卷拷贝的方式,对 DB2 子系统进行快速复制。这个方法最大的优势在于,速度快。其次,通过卷对卷的拷贝,我们能够最大程度的保证测试 DB2 和生产 DB2 物理特性(数据在物理磁盘上的分布情况)的一致性。然而这个方法主要的问题在于,

        DB2 使用的都是 VSAM 数据集,卷对卷拷贝后,可能需要针对 VSAM 数据集新建 VSAM cluster; 
        通常 DB2 所涉及到的 VSAM 数据集较多,用户很难把这些 VSAM 数据集一一改名,因此新生成的 DB2 数据库的名字只能保持和源 DB2 一致。 
        第二种方法无疑是非常有吸引力的,但是它的缺点也十分的棘手。针对这种情况,IBM DB2 Cloning Tool 应运而生。它能够帮助用户借助 FlashCopy 等快速磁盘复制技术的威力,方便,快捷的克隆出所需的 DB2 数据库。

DB2 Cloning Tool 的典型使用场景

        快速克隆生产系统 DB2,使得用户能够并发的运行生产流程; 
        建立和生产系统完全等同的 QA(Quality assurance)测试环境,使得性能测试的结果更有针对性; 
        在升级到 DB2 新版本之前,创建完整的子系统环境(克隆),用于在生产系统升级到新版本前测试新系统的升级和应用; 
        创建数据仓库,使用户能在不影响生产系统的情况下进行数据挖掘。 
        DB2 Cloning Tool 的使用环境


        图 1. DB2 Cloning Tool 的使用环境
       q

说明:

        1. 源系统和目标系统可以是同一个 MVS 系统。此时 DB2 Cloning Tool 可以帮助用户修改目标卷的卷标,自动将其 online 后,修改目标卷上数据集的名称。

        2. DB2 Cloning Tool 支持多种快速磁盘复制技术和磁盘镜像技术,包括 IBM FlashCopy,IBM PPRC,EMC TimeFinder/Snap,EMC TimeFinder/Mirror 等等。

DB2 Cloning Tool 客户化

        要使用 DB2 Cloning Tool,必须在源环境和目标环境分别通过 SMP/E 安装 DB2 Cloning Tool 相关的程序库。并根据要求对其进行相应的客户化。下面是详细的客户化步骤:

        生成 DB2 Cloning Tool 的运行参数 CKZINI:

        通过运行作业 DB2CT.V1R1.SCKZJCL(CKZIMRG) 创建一个新的参数成员——SCKZINI。


        清单 1. DB2CT.V1R1.SCKZJCL 代码
               
CKZINIMG JOB ,'INIMERGE',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
********************************************************************
*      COPYRIGHT 2001 - 2006 MAINSTAR SOFTWARE CORPORATION         *
*                  ALL RIGHTS RESERVED                             *
********************************************************************
* MERGE THE NEW INI (CKZINI#) WITH THE EXISTING ONE (CKZINI)
MERGE   EXEC PGM=CKZ01MER
STEPLIB  DD  DISP=SHR,DSN=DB2CT.V1R1.SCKZLOAD
INI      DD  DISP=SHR,
             DSN=DB2CT.V1R1.SCKZPARM(CKZINI#)  
MSCINI   DD  DISP=SHR,
             DSN=DB2CT.V1R1.SCKZPARM(CKZINI#) 
UPDATE   DD  DISP=SHR,
             DSN=DB2CT.V1R1.SCKZPARM(CKZINI)  
SYSPRINT DD  SYSOUT=*
SYSUDUMP DD  SYSOUT=*
ABNLIGNR DD  DUMMY                   DO NOT REMOVE IF USING ABENDAID


        根据需要修改 CKZINI 参数:

        建议新用户使用默认的 CKZINI 参数。如果多个系统间通过 CAMIM/MII 共享 DASD, 那么需要设置以下的参数。


        清单 2. 多个系统间通过 CAMIM/MII 共享 DASD 需要设置的参数
               
:RESOURCE_SERIALIZATION
  MIM_GDIF = YES
  
        更新 DB2CT.V1R1.SCKZJCL 中的作业:

        根据当前系统中 DB2 Cloning Tool 的 HLQ 和 DB2 的 SDSNLOAD 数据集修改该作业库中的 JCL。

        将 DB2 Cloning Tool 的 LOAD LIB:DB2CT.V1R1.SCKZLOAD 添加到系统的 APF 中:

        确保运行 DB2 Cloning Tool 的用户拥有足够的 RACF 权限:

        执行 COPY 和 RENAME 命令,需要拥有源和目标 user catalog 的 ALTER 权限; 
        执行 DB2UPDATE 命令,需要拥有对目标数据集的 UPDATE 权限; 
        执行 COPY 命令,需要使用 ADRDSSU ADMIN 参数的权限; 
        通过保护 DB2 Cloning Tool 的日志文件,可以避免未授权的用户使用 COPYCHECK 命令。

51/512345>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号