DB2ENTRY 资源定义

DB2ENTRY 定义 CICS® Db2® 连接设施所使用的 条目线程 的属性。

事务或一组事务可与 DB2ENTRY; 关联; 一组事务可通过使用一个或多个通配符来表示。 此外,还可以通过定义 DB2TRAN来使更多事务与 DB2ENTRY 相关联。

有关安装 Db2 条目资源定义的信息,请参阅 安装 Db2 条目资源定义。 有关使用 BAS 的信息,请参阅 使用 BAS Db2 条目资源定义

语法

读取语法图跳过可视语法图DB2ENTRY( 名称)GROUP( groupName)DESCRIPTION( 文本)TRANSID( 事务)ACCOUNTREC(NONE)ACCOUNTREC(UOW)ACCOUNTREC(TASK)ACCOUNTREC(TXID)AUTHTYPE(USERID)AUTHTYPE(GROUP)AUTHTYPE(SIGN)AUTHTYPE(TERM)AUTHTYPE(TX)AUTHTYPE(OPID)AUTHID( 用户标识符)DROLLBACK(YES)DROLLBACK(NO)PLANEXITNAME(DSNCUEXT)PLANEXITNAME( 退出)PLAN( 计划)PRIORITY(HIGH)PRIORITY(EQUAL)PRIORITY(LOW)PROTECTNUM(0)PROTECTNUM( 值)SHARELOCKS(NO)SHARELOCKS(YES)THREADLIMIT(0)THREADLIMIT( 值)THREADWAIT(POOL)THREADWAIT(YES)THREADWAIT(NO)

属性

ACCOUNTREC ({NONE| TASK | TXID | UOW})
指定使用此 Db2 条目的事务所需的最小 Db2 记帐量。 可能会超出指定的最小值,如以下选项中所述。
使用此 DB2ENTRY 中的线程的事务不需要记帐记录

但是,在终止线程之后, Db2 将为每个线程生成至少一个记帐记录。 授权更改还会导致生成记录。

TASK
CICS Db2 连接设施至少会为每个 CICS 任务生成一个记帐记录。

包含多个工作单元 (UOW) 并且在同步点释放线程的事务可以对其每个 UOW 使用不同的线程。 因此,可能会为每个 UOW 生成记帐记录。

TXID
CICS Db2 连接设施导致在使用线程的 transid 发生更改时生成记帐记录。

此选项适用于由多个事务标识使用的 Db2 条目定义。 由于通常在同步点释放线程,因此包含多个 UOW 的事务可能会对每个 UOW 使用不同的线程。 因此,可能会为每个 UOW 生成记帐记录。

UOW
CICS Db2 连接设施会导致为每个 UOW 生成记帐,假定线程在 UOW 结束时释放。
AUTHID (用户标识)
指定使用此 DB2ENTRY时用于安全性检查的用户标识。

如果要将 RACF® 用于 Db2 地址空间中的部分或全部安全性检查,请不要指定 AUTHID; 请改为将 AUTHTYPE 与 GROUP , SIGN 或 USERID 选项配合使用。 必须使用 AUTHTYPE ,因为使用 AUTHID 的线程不会将所需的 RACF 访问控制环境元素 (ACEE) 传递到 Db2

当您安装指定 AUTHID 或 AUTHTYPE 属性的 DB2ENTRY 资源时,或者当您修改其中一个属性时, CICS 会检查执行操作的用户标识是否被授权为 AUTHID 或 AUTHTYPE 的代理用户。 在 CICS 冷启动或初始启动上组列表安装期间,此检查也适用于 CICS 区域用户标识。 有关信息,请参阅 代理安全性

您指定的标识的长度最多可以为 8 个字符。

可接受的字符:

A-Z 0-9 $ @ #

有效字符在代码页 IBM® -037 显示时列出。 如果使用不同的 EBCDIC 代码页,请注意 变体角色 中记录的变体字符。

除非使用 CREATE 命令,否则您输入的任何小写字符都将转换为大写。

AUTHTYPE ({USERID| OPID | GROUP | SIGN | TERM | TX})
指定使用此 DB2ENTRY时可用于安全性检查的标识类型。

如果要将 RACF 用于 Db2 地址空间中的部分或全部安全性检查,请使用 GROUP , SIGN 或 USERID 选项。 必须使用其中一个选项,因为只有使用这些选项定义的线程才会将必需的 RACF 访问控制环境元素 (ACEE) 传递到 Db2。 但是,如果指定 SIGN 选项,那么仅当为 DB2CONN 定义上的 SIGNID 属性指定的值与 CICS 区域用户标识匹配时,才会将 ACEE 传递到 Db2

当您安装指定 AUTHID 或 AUTHTYPE 属性的 DB2ENTRY 资源时,或者当您修改其中一个属性时, CICS® 会检查执行操作的用户标识是否被授权为 AUTHID 或 AUTHTYPE 的代理用户。 在 CICS 冷启动或初始启动上组列表安装期间,此检查也适用于 CICS 区域用户标识。 有关信息,请参阅 代理安全性

如果仅使用 Db2 内部安全性,那么 ACEE 不是必需的; 因此在这种情况下,可以使用任何选项。

用户标识
与 CICS 事务关联的 USERID 将用作授权标识。 如果用户标识的长度小于 8 个字符,那么将在右边填充空白。

Db2 样本登录出口 DSN3@SGN 与 AUTHTYPE (USERID) 配合使用时,该出口会将用户标识作为主授权标识发送至 Db2 ,并将连接的组名作为辅助标识发送至 Db2 。 使用样本登录出口时, AUTHTYPE (USERID) 和 AUTHTYPE (GROUP) 相同。

OPID
与 CICS 事务登录设施相关联的用户标识相关联的操作员标识将用作授权标识。 在右边用空格填充 3 字符运算符标识,以形成 8 字符授权标识。
GROUP
指定 1-to 8-character USERID 和连接的组名作为授权标识。 下表显示了 Db2如何解释这两个值。
传递到 Db2 的标识 Db2 如何解释值
CICS 登录用户标识 (USERID) 表示主 Db2 授权标识。
RACF 连接的组名 如果组选项的 RACF 列表未处于活动状态,那么 Db2 将使用 CICS 连接设施提供的已连接组名作为辅助 Db2 授权标识。 如果组选项的 RACF 列表处于活动状态,那么 Db2 将忽略 CICS 连接设施提供的已连接组名,但该值会显示在辅助 Db2 授权标识的 Db2 列表中。

要使用 GROUP 选项,必须在区域的系统初始化参数中指定 SEC=YES。

如果没有可用于此 USERID 的 RACF 组标识,那么会将空白的 8 字符字段作为组标识传递到 Db2

签名
指定将 DB2CONN 的 SIGNID 属性用作资源授权标识。
TERM
将终端标识 (填充到 8 的 4 个字符) 指定为授权标识。 如果终端未与事务连接,那么无法以此方式获取授权标识。

如果事务已启动,请使用 CICS 命令,并且没有与其关联的终端不使用 AUTHTYPE (TERM)。

TX
将事务标识指定为授权标识。 4 字符事务标识在右侧填充空白以形成 8 字符授权标识。
DB2ENTRY (名称)
用于标识 Db2 条目定义的 1 到 8 个字符的名称。
可接受的字符:

A-Z a-z 0-9 $ @ #./ - _ % &?!:| " = ¬,; < >

当代码页为 IBM-037时,有效字符将按其呈现方式列出。 如果使用不同的 EBCDIC 代码页,请注意 变体角色 中记录的变体字符。

DESCRIPTION(文本)
您可以提供在此字段中定义的资源的描述。 描述文本的长度最多可以为 58 个字符。 您可以使用的字符没有任何限制。 但是,如果使用括号,请确保对于每个左括号都有一个匹配的右括号。 如果使用 CREATE 命令,那么对于文本中的每个单撇号,将编码两个撇号。
DROLLBACK ({YES| NO})
指定在选择事务作为死锁解决的受害者时, CICS Db2 连接设施是否启动 SYNCPOINT ROLLBACK。
在将控制权返回给应用程序之前,连接设施会启动 SYNCPOINT ROLLBACK。 此外,附件设施会将 Db2 返回的 SQL 返回码从 -913 更改为 -911 ,并将 -911 返回到应用程序。

如果 DB2ENTRY 由作为 OTS 事务一部分运行企业 Bean 的事务使用,请不要指定 YES; 在 OTS 事务中不允许 SYNCPOINT ROLLBACK。

同样,如果 DB2ENTRY 由作为没有 SYNCONRETURN 的 DPL 服务器运行的事务使用,请不要指定 YES; SYNCPOINT ROLLBACK 在此场景中无效,并且将导致 AD2Z 异常终止。

连接设施不会对此事务启动回滚。 向应用程序返回 SQL 返回码 -913。
GROUP 组名
每个资源定义都必须具有 GROUP 名称。 资源定义成为组的成员,并在安装组时安装在 CICS 系统中。
可接受的字符:

A-Z 0-9 $ @ #

当代码页为 IBM-037时,有效字符将按其呈现方式列出。 如果使用不同的 EBCDIC 代码页,请注意 变体角色 中记录的变体字符。

输入的任何小写字符都将转换为大写。

GROUP 名称的长度最多可以为 8 个字符。 小写字符被视为大写字符。

PLAN (套餐)
指定要用于此条目的计划的名称。
PLANEXITNAME (DSNCUEXT|DFHD2PXT|exit)
指定要用于此 Db2 条目定义的动态计划出口的名称。 如果在存在 Db2 条目定义的活动事务时更改 PLAN 和 PLANEXITNAME ,那么下次事务释放线程时,将应用新值。 DFHD2PXT 是样本线程安全动态计划出口, DSNCUEXT 是样本准重入动态计划出口。 有关更多信息,请参阅 样本出口程序 DSNCUEXT 和 DFHD2PXT
优先级 ({HIGH| EQUAL | LOW})
指定该 DB2ENTRY 的线程 TCB 相对于 CICS 主 TCB(QR TCB)的优先级。 线程 TCB 是 CICS 开放式 L8 TCB。
线程 TCB 的优先级高于 CICS QR TCB。
等于
线程 TCB 与 CICS QR TCB 具有相同的优先级。
线程 TCB 的优先级低于 CICS QR TCB。
PROTECTNUM ({0|value})
指定此 Db2 条目定义所允许的最大受保护线程数。 事务在没有其他工作排队时释放的线程可以 受保护,这意味着它不会立即结束。 如果在此期间未复用受保护线程,那么该线程将在两个完整的清除周期之后结束。 例如,如果清除周期设置为 30 秒,那么受保护线程在释放后 30 到 60 秒结束 (如果在此期间未复用)。 启动 CICS Db2 连接设施后的第一个清除周期为 5 分钟,之后将应用 PURGCYCLE 值。 仅当线程处于不活动状态时,才会对其进行保护。 如果事务复用受保护线程,那么该线程将变为活动线程,并且当前受保护线程数将递减。
SHARELOCKS ({NO| YES})
指定 CICS 是否将 XID 传递到 Db2 ,以允许 Db2 与在同一全局工作单元中传递相同 XID 的任何其他线程共享锁定。 同一全局工作单元中的其他线程可以源自其他 CICS 区域,例如,由于未指定 SYNCONRETURN 的 DPL 请求,或者来自其他事务管理器 (例如 IMS TM) ,并访问同一全局工作单元中的 Db2 。 XID 不用于 CICS 与 Db2之间的恢复。
指定 SHARELOCKS (YES) 仅与涉及跨多个 CICS 区域或事务管理器的工作单元的事务相关,在此方案中,工作单元中涉及的每个区域中的每个 DB2ENTRY 都将需要指定 SHARELOCKS (YES)。 这些 DB2ENTRYs 仅应由这些分布式事务使用。 对于访问 Db2的所有其他事务,使用的 DB2ENTRY 应指定 SHARELOCKS (NO)。
CICS 不会将 XID 传递到 Db2。 不会与同一全局工作单元中的其他线程共享锁定。 以挂起打开的游标将在同步点之间保持打开状态。
YES
CICS 将 XID 传递到 Db2。 它充当令牌,并允许 Db2 与在同一全局工作单元中传递相同 XID 的任何其他线程共享锁定。 为此, CICS 首先查询 z/OS® RRS 以确定是否存在具有匹配 LU6.2 UOWID 的全局工作单元。
注: 对全局工作单元的查询涉及对同一 RRS 日志记录组中的系统发出具有综合系统作用域的 ATRQUERY 请求。 这将在 CPU 消耗方面产生性能影响。 应确保 CICS 用户 ID 对 FACILITY 类中 MVSADMIN.RRS.COMMANDS.gname.sysname 资源或 MVSADMIN.RRS.COMMANDS 资源的 READ 访问权限。 您还应确保未启用对成功访问 RRS 系统管理功能的审计; 否则,将生成过多的 SMF 80 记录。 更多信息,请参阅 z/OS MVS 程序设计中的 ATRQUERY - 获取 RRS 信息:资源回收

如果全局工作单元是从 CICS 外部启动并由 z/OS RRS 协调,那么 CICS 将获取与 RRS 恢复单元相关联的 XID ,并将其传递到 Db2

如果工作单元中未涉及 RRS ,那么 CICS 将根据与工作单元关联的 LU6.2 UOWID 中的数据生成 XID。 参与同一工作单元的所有 CICS 区域将从同一 LU6.2 UOWID 生成相同的 XID。

将 XID 传递到 Db2 涉及在每个工作单元启动时对 Db2 进行部分登录。 如果先前不需要每个工作单元的部分登录,那么部分登录数将增加。 如果已需要每个工作单元的部分登录 (如使用 ACCOUNTREC (UOW) 的情况) ,那么部分登录的数量不会增加。

开始或每个工作单元上的登录会关闭任何挂起的游标。 因此,当使用 XID 时,不支持挂起的游标在同步点之间保持打开的能力。 对先前挂起的游标的后续访存将导致返回 SQLCODE -501。

THREADLIMIT ({0|value})
指定此 Db2 条目定义的最大线程数, CICS Db2 连接允许在发出请求以等待,异常终止或转移到池之前处于活动状态。
THREADWAIT ({POOL| YES | NO})
指定在活动 DB2ENTRY 线程数达到 THREADLIMIT 时,事务是等待 DB2ENTRY 线程,异常结束还是溢出到池。
如果所有线程都处于繁忙状态,那么事务将转向使用线程池。 如果池也处于繁忙状态,并且您在 Db2 连接定义上指定了 THREADWAIT (NO) ,那么事务将异常结束,异常结束代码为 AD3T。
如果所有线程都处于繁忙状态,那么事务将异常结束,并异常结束 AD2P。
YES
如果所有线程都处于繁忙状态,那么事务将等待线程变为可用。
TRANSID(事务)
指定与条目关联的事务标识。 这里只能指定一个事务。 但是,在 TRANSID 中使用一个或多个通配符允许表示一组事务。 可以通过定义引用此 DB2ENTRY的 DB2TRAN 来为此 DB2ENTRY 定义其他事务。 TRANSID 在 DB2ENTRY上是可选的。 所有事务都可以改为通过 DB2TRAN 定义与 DB2ENTRY 相关联。 但是,如果只有一个事务与 DB2ENTRY相关联,那么更容易在 DB2ENTRY上指定该事务。
注: 在此处指定事务标识将导致在安装 DB2ENTRY 定义时创建隐式 DB2TRAN 对象。 隐式 DBTRAN 将具有与指定的事务标识并置的名称 DFH。 这些隐式 DB2TRANs 将出现在 DB2TRAN 资源的 CICS 和 CICSPlex ® SM 视图上。 如果更改了 DB2ENTRY 以指定不同的 TRANSID ,那么在重新安装 DB2ENTRY 时,将删除先前的隐式 DB2TRAN ,并创建新的隐式 DB2TRAN 以表示与 DB2ENTRY相关联的新 TRANSID。