WLM_REFRESH存储过程

存储过程WLM_REFRESH用于刷新WLM环境。 该存储过程可以回收运行环境以及任何其他WLM环境。

WLM_REFRESH的环境

WLM_REFRESH、DSNTWR的加载模块必须位于APF授权的库中。

DSNTWR将模块DSNTWRE作为子任务运行。 DSNTWRE为 Db2 子系统检索 Db2 环境信息块(EIB)的副本。 DSNTWRE模块无需APF授权,但必须位于APF授权的库中,才能供DSNTWR使用。

建议 :使用WLM环境DSNWLM_GENERAL运行WLM_REFRESH。 安装工作 DSNTIJMV 为该环境创建了一个名为 DSNWLMG 的地址空间过程。

WLM_REFRESH需要授权

要执行 CALL 语句,进程的 SQL 授权 ID 必须对资源类 DSNR 中的 z/OS® 安全服务器系统授权工具 (SAF) 资源概要文件 ssid.WLM_REFRESH. WLM-environment-name 具有 READ 访问权限或更高权限。 这是与 ssid.WLMENV. WLM-environment-name 资源配置文件不同的资源配置文件,它 Db2 用于确定存储过程或用户定义函数是否被授权在指定的 WLM 环境中运行。

WLM_REFRESH使用扩展的MCS控制台来监控操作系统对WLM环境刷新请求的响应。 创建扩展MCS控制台的权限由资源配置文件 MVS.MCSOPER 控制。* 在OPRCMDs级别。 如果 MVS.MCSOPER.* 配置文件存在,或者特定配置文件 MVS.MCSOPER.DSNTWR 存在,则与运行WLM_REFRESH的WLM环境关联的任务ID必须具有读取权限。

如果 MVS.VARY.* 配置文件存在,或者特定配置文件 MVS.VARY.WLM 存在,则与运行WLM_REFRESH的WLM环境关联的任务ID必须具有控制访问权限。

WLM_REFRESH语法图

存储过程WLM_REFRESH用于刷新WLM环境。 WLM_REFRESH可以回收运行环境以及任何其他WLM环境。

下面的语法图显示了用于调用 WLM_REFRESH 的 SQL CALL 语句。 WLM_REFRESH的关联约定为一般与空值。

阅读语法图跳过可视化语法图CALLWLM_REFRESH(WLM环境,ssidNULL'␠␠',状态消息,返回码)

WLM_REFRESH选项说明

WLM环境
指定要刷新的WLM环境的名称。 这是一个VARCHAR(32)类型的输入参数。
SSID
指定与WLM环境关联的 Db2 子系统的子系统ID。 如果此参数为空或留空,则 Db2 会使用以下值之一作为此参数:
  • 在非数据共享环境中, Db2 使用运行WLM_REFRESH的子系统的子系统ID。
  • 在数据共享环境中, Db2 使用运行 WLM_REFRESH 的数据共享组的组附加名称。

这是一个VARCHAR(4)类型的输入参数。

状态消息
包含有关执行WLM刷新操作的信息。 这是一个VARCHAR(120)类型的输出参数。
返回码
包含WLM_REFRESH调用的返回代码,该代码为以下值之一:
0
WLM_REFRESH 已成功执行。
4
存在下列情况之一:
  • SAF 资源配置文件 ssid.WLM_REFRESH. wlm-environment 未在资源类 DSNR 中定义。
  • 该过程的SQL授权ID(CURRENT SQLID)未定义为SAF。
  • 等待 z/OS 回复的时间超过了规定。
8
该进程的SQL授权ID(CURRENT SQLID)无权刷新WLM环境。
990
DSNTWR在确定当前SQLID时收到意外的SQLCODE。
993
存在下列情况之一:
  • WLM环境参数值为空、空白或包含无效字符。
  • ssid值包含无效字符。
994
在消息 DSNT5461 中指定的秒数内,扩展的MCS控制台未激活。
995
DSNTWR 并非作为授权程序运行。
996
DSNTWR无法激活扩展的MCS控制台。 更多信息请查看邮件 DSNT533I。
997
DSNTWR尝试从扩展的MCS控制台发送消息,但未成功。 更多信息请查看邮件 DSNT533I。
998
DSNTWR的扩展MCS控制台发出了警报。 更多信息请查看邮件 DSNT534I。
999
操作系统拒绝了授权的WLM_REFRESH请求。 更多信息请查看邮件 DSNT545I。

返回码是一个整数类型的输出参数。

WLM_REFRESH调用示例

假设您想刷新WLM环境 WLMENV1 ,该环境与ID为DSN的 Db2 子系统相关联。 假设您已经拥有 DSN.WLM_REFRESH.WLMENV1 SAF配置文件的读取权限。 WLM_REFRESH的CALL语句如下:

strcpy(WLMENV,"WLMENV1");
strcpy(SSID,"DSN");      
EXEC SQL CALL SYSPROC.WLM_REFRESH(:WLMENV, :SSID, :MSGTEXT, :RC);

有关设置对 SAF 概要文件的访问权限和调用 WLM_REFRESH 的完整示例,请参阅作业 DSNTEJ6W ,该作业位于数据集前缀.SDSNSAMP 中。