db2pdcfg -针对问题确定行为配置 Db2 数据库 命令
设置 Db2 数据库内存集中的标志以影响数据库系统行为,从而进行问题确定。
权限
需要下列其中一个权限级别:
- SYSADM 权限级别。
- SYSCTRL 权限级别。
- SYSMAINT 权限级别。
- SYSMON 权限级别。
仅授予 SYSMON 授权级别时,除非指定了 status 子选项,否则以下参数无效:
- catch
- cos
- dbcfg
- dbmcfg
- fodc
- trapresilience
注: 在 Windows 上,您必须具有管理员权限才能使用 db2pdcfg 命令。
需要的连接
没有最低限度连接需求。 但是,如果指定数据库作用域选项,那么该数据库必须处于活动状态,该命令才能返回请求的信息。
命令语法
命令参数
- -catch
- 指示数据库管理器捕获错误或警告。
- 清除
- 清除设置的任何 catch 标志。
- 状态
- 显示设置的任何 catch 标志。
- errorCode
- 捕获设置的特定标志。可能的 errorCode 选项包括:
- sqlCode[,reasonCode] / sqlCode=sqlCode[,reasonCode]
- ZRC (十六进制或整数)
- ZRC #define (例如 SQLP_LTIMEOUT)
- ADM (例如 ADM1611)
- 字符串 (例如 diagstr="Hello World ")
- ECF (十六进制或整数)
- "死锁" 或 "locktimeout"
捕获您指定的特定标志 (例如管理通知消息 (ADM1611) 或在 db2diag 日志中观察到的任何字符串 ("Hello World")) 会导致 db2cos 脚本转储此信息。注: 如果打算在远程成员上使用引号为 diagstr 选项指定字符串,请使用带有引号的 " \"。 例如,在远程成员 5 上,该命令将为:db2pdcfg -catch diagstr=\"Hello World\" -member 5 - 堆栈
- 在 db2diag 日志文件中生成堆栈跟踪。 缺省值。
- db2cos
- 运行在 bin 目录中找到的 db2cos 调出脚本。 缺省值。
- stopdb2trc
- 停止 db2trc 命令。
- lockname=lockname
- 用于捕获特定锁定的锁定名称 (
lockname=000200030000001F0000000052)。 - locktype=locktype
- 用于捕获特定锁定 (
locktype=R或locktype=52) 的锁定类型。 - 计数 =count
- 数据库管理器在数据库管理器陷阱期间执行 db2cos 的次数。 缺省值为 1。
- -科斯
- 指示数据库管理器如何在数据库管理器陷阱上调用 db2cos 调出脚本。
- 状态
- 打印状态。
- off
- 在数据库管理器陷阱期间关闭对 db2cos 的数据库管理器调用。
- on
- 在数据库管理器陷阱期间开启对 db2cos 的数据库管理器调用。
- sleep=numsec
- 检查 db2cos生成的输出文件大小之间的休眠时间量。 缺省值为 3 秒。
- timeout=numsec
- 在假定 db2cos 脚本已完成之前要等待的时间量。 缺省值为 30 秒。
- 计数 =count
- 在数据库管理器陷阱期间执行 db2cos 的次数。 缺省值为 1。
- SQLO_SIG_DUMP
- 在接收到 SQLO_SIG_DUMP 信号时启用 db2cos 执行。
- -dbmcfg
- 设置 DBM 配置保留位图。 此选项受密码保护,可从 IBM Db2 服务获取此选项。
- xml=0 | 1
- 值 0 (缺省值) 或 1 (实例具有 xml 数据)。
- -dbcfg
- 设置数据库配置保留位图。 此选项受密码保护,可从 IBM Db2 服务获取此选项。
- xml=0 | 1
- 值 0 (缺省值) 或 1 (数据库具有 xml 数据)。
- -fodc
- 设置 Db2 数据库内存集中的标志。 这将影响涉及首次出现数据收集 (FODC) 的问题确定情境期间的数据库系统行为。
受支持的 -fodc 选项及其潜在值和缺省值为:
- 重置
- 将所有 FODC 选项复原为其缺省值。
- 状态
- 显示所有 FODC 选项的状态。 这是缺省选项,即,在不带参数调用 db2pdcfg 时将显示 FODC 状态。
- FODCPATH=fodc_path_name
- 指定在其中创建 FODC 数据包的现有目录的完整路径名。 您指定的路径必须可由机器上的成员以及在成员或分区上运行的 fmp 进程写入。
- DUMPCORE=
- 仅在 UNIX 和 Linux® 操作系统上启用或禁用核心文件生成。
- AUTO
- 如果陷阱无法持续并且实例已关闭,那么将生成核心文件。
- ON
- 启用核心文件生成和覆盖 DB2RESILIENCE 注册表变量设置。
- OFF
- 禁用核心文件生成。
- DUMPDIR=dirpath
- 指定在其中创建核心文件的目录的绝对路径名。
- DUMPSHM =
- 通过在 db2cos 脚本中执行 db2pd 命令来控制 DB2 内存集的转储。
- AUTO
- 如果需要核心文件,那么将执行 db2pd 命令以在系统中断期间转储调出脚本中的 DB2 共享内存集。
- ON
- 执行 db2pd 命令以在系统中断期间转储调出脚本中的 DB2 共享内存集。
- OFF
- 在系统中断期间,不会执行 db2pd 命令来转储调出脚本中的 DB2 共享内存集。
- CORESHM=
- 控制核心转储文件中的共享内存是否仅包含在 AIX® 和 Linux (内核 2.6.32 或更高版本) 平台上。
- ON
- 共享内存包含在核心转储文件中。
- OFF
- 共享内存未包含在核心转储文件中。
- CORELIMIT =大小
- 创建的核心文件的最大大小。 此值将覆盖当前核心文件大小限制设置。 将强制使用缺省值 unlimited 。 应注意可用的文件系统空间,因为核心文件可能非常庞大。 实际大小取决于 Db2 配置以及发生问题时的进程状态。
如果要使用 db2pdcfg来更改 CORELIMIT ,那么它受制于通常的 UNIX 访问许可权,在某些情况下, CORELIMIT 将无法超过您的 ulimit 设置。 在启动 Db2 产品之前,请使用 DB2FODC 注册表变量在 db2start 上更改该值或使用大型 ulimit 设置。
- 服务级别 =
- 指定在可能指示数据损坏的面板,陷阱或错误期间收集数据的方式。 缺省行为设置为 AUTOMATIC。 请注意,动态设置 BASIC 或 FULL 将覆盖任何先前的 DUMPCORE 设置,因此如果要保持其原样,那么必须将其指定为 db2pdcfg 设置的一部分。 动态设置此值不会影响 CF ,除非 CF 是通过故障重新启动的,或者如果它是有意停止并重新启动的。 此参数支持以下选项:
- AUTOMATIC
- 此设置指定将在运行时为 成员选择有效 SERVICELEVEL 设置 (即 BASIC 或 FULL) ,并在开始时为 CF 进程选择有效 SERVICELEVEL 设置。 目前,选择 BASIC 的唯一时间是针对具有多个 成员 的 Db2 pureScale® 环境以及陷阱弹性。
- BASIC
- 此 SERVICELEVEL 设置指定要转储最少量的 FODC 数据。 缺省情况下,核心转储处理被禁用(但可被 COREDUMP 设置覆盖),诊断被限制为仅针对受影响线程,并且调出脚本被禁用。
- 完全
- 此 SERVICELEVEL 设置指定要转储最大数量的 FODC 数据。 这包括核心转储、任何相关联的组件转储和调出脚本的调用。 此外,不会尝试承受陷阱。
- -fixstack existing_stack_filename
- 读取现有堆栈文件,并在相同位置生成具有相同文件名的新文件,但具有额外的.fmt文件扩展名。 银行.fmt如果在运行此命令时定义符号的库可用,那么生成的文件将在堆栈跟踪中的某些帧上具有改进的符号详细信息。注: 仅适用于 Linux 操作系统。
- -global
- 指定还将在远程主机上运行 db2pdcfg 。 如果指定了 -file 参数,那么将在发出 db2pdcfg 命令的计算机上创建由来自远程主机的所有单独文件组成的单个文件。注: 此命令参数在 Db2 V 9.8 修订包 3 和更高版本的修订包中可用。 在 Db2 版本 9.7 修订包 4 和更高版本的修订包中不推荐使用此命令参数。
- -dbp 数据库分区号
- 指定 db2pdcfg 将在指定数据库分区的远程主机上运行。 如果未使用 -global 选项指定数据库分区,那么 db2pdcfg 将在所有远程主机上运行。
- -host 主机名
- 指定要对其发出此命令的一台或多台主机。 此命令将针对所有驻留在这些主机上的成员发出。 如果未指定此选项,那么将对本地主机发出此命令。 如果指定了多台主机,那么所有主机名都必须有效,此命令才能完成。 不能将此选项与 -member 选项一起指定。
- -member member_number | 成员范围
- 指定要对其发出命令的一个或多个成员。 如果未指定此选项,那么将对当前成员发出此命令。 可以逗号分隔的 member_number 列表 (member1, member2) 形式指定多个成员,或使用 member_range,其中 member_range 是成员范围 (member1-member3),或者使用这两种方法的任意组合。 不能将此选项与 -host 选项一起指定。
- 全部
- 指定对所有成员(包括远程主机上的成员)发出该命令。
- -trap弹性
- 此选项显示或修改陷阱弹性参数以用于问题确定。以下是指定此选项时的样本输出:
Db2 trap resilience is enabled. Current threshold setting : 0 (threshold disabled) Number of traps sustained : 0- 阈值 =number
- 缺省值: 0 (已禁用阈值)
示例
要显示成员 11,12,13 和 15 上的当前 FODC 包设置,请执行以下操作:
db2pdcfg -fodc status -member 11-13,15要将 FODC 程序包定向到本地主机上的目录,请执行以下操作:
db2pdcfg -fodc FODCPATH=/home/hotel49/user/FODC/FODClocal使用说明
db2pdcfg 是动态更改 (联机) FODC 选项的方法。
由于 db2pdcfg 在 Db2 数据库内存中设置标志,因此仅当实例启动时,使用 db2pdcfg 工具进行的更改才会处于活动状态。 为了使更改成为永久更改,请使用 DB2FODC 注册表变量。
在 -fodc 选项中,某些设置以格式
variable=value指定。 可以在单个命令行中指定多个选项:db2pdcfg -fodc DUMPCORE=ON -fodc CORELIMIT=8GB或者,可以使用空格在单个命令行字符串中并置多个设置:
db2pdcfg -fodc DUMPCORE=ON CORELIMIT=8GB在不使用任何选项的情况下执行 db2pdcfg 命令将提供以下有关陷阱弹性的信息摘要输出 (以粗体突出显示):
$ db2pdcfg
Current PD Control Block Settings:
All error catch flag settings cleared.
db2cos is enabled for engine traps.
PD Bitmap: 0x1000
Sleep Time: 3
Timeout: 300
Current Count: 0
Max Count: 1
Current bitmap value: 0x0
Instance is not in a sleep state
Db2 trap resilience is enabled.
Current threshold setting : 0 ( disabled )
Number of traps sustained : 0
Database Member 0
FODC (First Occurrence Data Capture) options:
Dump directory for large objects (DUMPDIR)= /home/hotel85/vivmak/sqllib/db2dump/
Dump Core files (DUMPCORE)= AUTO
Current hard core file size limit = Unlimited
Current soft core file size limit = 0 Bytes