< 上一课 | 下一课 >

使用部署组部署用于生产的存储过程

在本练习中,您将使用向导来创建部署组,然后从部署组部署用于生产的存储过程。
部署组管理一组工件与用于部署这些工件的服务器概要文件之间的关联。 可以从部署组部署以下各种类型的工件:
  • 例程
  • SQL 语句
  • PL/SQL 数据包
  • pureQuery DB2 静态绑定工件

服务器概要文件包含与相应数据库连接相关联的设置。在将数据库工件(如存储过程或 SQL 语句)部署或绑定到数据库服务器时,会使用这些设置。创建到数据库的连接时,工作台会使用数据库缺省值和适用的全局首选项,自动生成连接的服务器概要文件。在“服务器概要文件管理器”视图中,生成的服务器概要文件会通过在名称中追加“(generated)”来指明。

部署组的其中一个优点是,通过一个操作就可管理对多个数据库的多个工件部署。此操作的效率要高于将每个工件单独部署到每个数据库。

注: 在本教程中,GSDB 数据库同时用作开发数据库和生产数据库。在上一个练习中,您已将存储过程部署到 GSDB“开发”数据库,以进行调试和运行。在本练习中,为了进一步熟悉,将使用部署组将存储过程部署到“生产”数据库。
下表描述了部署用于开发和部署用于生产的不同之处。
表 1. 比较部署操作
部署用于开发的例程 部署用于生产的例程
从“数据项目资源管理器”视图部署。 从“部署组管理器”视图部署。
一次只能将一个例程部署到一个数据库。 通过一个操作即可将多个例程部署到多个数据库。
部署后,“数据项目资源管理器”视图中例程旁边的图标上会有扳手标志,表明该例程已部署用于开发 部署后,“数据项目资源管理器”视图中例程旁边的图标未更改。
如果启用调试,可从“数据项目资源管理器”视图或“数据源资源管理器”视图开始调试已部署的例程。 如果启用调试,只能从“数据源资源管理器”视图开始调试已部署的例程。
可从“数据项目资源管理器”视图或“数据源资源管理器”视图运行已部署的例程。 只能从“数据源资源管理器”视图运行已部署的例程。

要使用部署组来部署存储过程:

  1. 复审 GSDB4tutorial 连接的服务器概要文件。
    1. 在“服务器概要文件管理器”视图中,展开 GSDB4tutorial 文件夹,然后双击 GSDB4tutorial Profile (generated) 服务器概要文件设置会在服务器概要文件编辑器中打开。
    2. 单击每个选项卡以复审设置。请特别留意以下设置:
      • 在“数据库设置”页面上,GOSALESDW 为当前模式。
      • 在“例程设置”页面上,适用时启用调试复选框已选中。使用服务器概要文件关联的部署组来部署存储过程时,会在部署期间启用此存储过程进行调试。
      可以使用编辑器来更新服务器概要文件设置。
  2. 创建部署组。
    1. 在“部署管理器”视图中,单击工具栏上的新建部署组 (“部署管理器”视图中的“新建部署组”工具栏按钮。)。 “新建部署组”向导会打开。
    2. 在向导的“名称”页面上,为部署组名称输入 DG4GSDB,然后单击下一步
    3. 将服务器概要文件与部署组相关联。 在“服务器概要文件选择”页面上,选择 GSDB4tutorial Profile (generated),然后单击向右箭头按钮,以将此服务器概要文件移动到选定框。
    4. 单击下一步
    5. 将存储过程与部署组相关联。 在“工件选择”页面上,选择 SPDevelopment: SPEMPLOYEE,然后单击向右箭头按钮,以将存储过程移动到选定框。
    6. 单击完成 DG4GSDB 部署组会显示在“部署管理器”视图中,并且部署组定义会在编辑器中打开。
      显示在部署组编辑器中的 DG4GSDB 部署组定义

      可以使用编辑器将工件和服务器概要文件添加到部署组,或从部署组中除去工件和服务器概要文件。 还可以重新排列部署组中工件部署和绑定的顺序。对于存在工件依赖关系的情况,这会很有帮助;例如,如果需要先创建表,然后再创建该表索引的情况。

      如果要从部署组部署多个工件,可以选择错误处理选项,以在部署期间发生错误时使用。

  3. 关闭部署组编辑器。
  4. 部署 SPEmployee 存储过程。在“部署管理器”视图中,右键单击 DG4GSDB 部署组,然后单击部署

部署结果会显示在“SQL 结果”视图中。部署信息的快照会显示在“部署管理器”视图中部署组下的部署结果文件夹中。

显示 DG4GSDB 部署组的结果信息、工件和服务器概要文件的“部署管理器”视图。

由于已在 GSDB4tutorial Profile 服务器概要文件中选择适用时启用调试选项,因此会自动启用存储过程,以从数据源项目资源管理器进行调试。

< 上一课 | 下一课 >

反馈