进程名 | 描述 | 适用范围 |
db2cart | 确定何时归档日志文件,并调用用户出口来执行实际的归档工作。每个实例有一个 db2cart 进程,但是仅当实例中至少有一个数据库启用了 USEREXIT 时,该进程才运行。 | 所有 |
db2chkau | 由 DB2 审计工具使用以将一些项记录到审计日志。仅当启用了审计时该进程才是活动的。 | 所有 |
db2ckpw | 用于检查 DB2 服务器上的用户标识和密码。由于 DB2 依赖于操作系统级别的认证,因此,当某个用户或应用程序连接到服务器上的数据库时,使用该进程验证用户标识和密码。当将 AUTHENTICATION 设置为 SERVER 时,或者当连接是从非安全的操作系统建立的时候,就会进行认证。 | UNIX/Linux |
db2disp | DB2 代理程序分派器进程。当启用了连接集中时,该进程在分配给应用程序的逻辑代理程序和可用的协调代理之间分派应用程序连接。 仅当启用了连接集中时该进程才存在。
| 所有 |
db2fcmd | FCM(快速通信管理器)守护程序,用于处理分区间的通信。每个服务器、每个分区就有一个这样的进程。 | 只适用于多分区数据库环境 |
db2fmcd | 故障监视器协调程序(Fault Monitor Coordinator)守护程序进程。每个物理机器就有一个这样的进程。 | 只适用于 UNIX |
db2fmd | 为每个由故障监视器监控的 DB2 实例而启动的故障监视器守护程序进程。该进程是由协调守护程序(db2fmcd)监控的,因此,如果您杀死 db2fmd 进程,那么 db2fmcd 将使其重新运行。 | 只适用于 UNIX |
db2fmtlg | 当数据库被配置成 LOGRETAIN ON 且 USEREXIT OFF 时,在日志路径中预分配日志文件。如果完成了该工作,那么在正常的处理过程中,当从一个日志文件切换到另一个日志文件时,引擎进程就无需等待。 | 所有 |
db2gds | DB2 全局守护进程衍生程序(Global Daemon Spawner)进程,该进程启动 UNIX 上的所有 DB2 EDU(进程)。每个实例或每个数据库分区就有一个 db2gds。 | 只适用于 UNIX |
db2glock | 全局死锁检测器。该进程协调从每个数据库分区上的 db2dlock 进程收集的信息,以检查数据库分区之间是否存在死锁情形。db2glock 进程运行在多分区数据库的目录分区上。 | 只适用于多分区数据库环境 |
db2govd | DB2 控制器,它是一个反应性的管理进程。如果启用了 DB2 控制器,该进程按照控制器配置文件中指定的时间间隔来拍摄快照,并依据所有的配置规则来检查快照。如果违反了某个规则,则采取指定的操作。 | 所有 |
db2panic | 紧急代理程序。如果任何数据库分区上的代理程序都不空闲,那么该进程就处理一些紧急的请求。 | 只适用于多分区数据库环境 |
db2pdbc | PDB(并行数据库,Parallel Database)控制器。它处理来自远程节点的并行请求。 | 只适用于多分区数据库环境 |
db2rebal | 重新均衡器进程。当将容器添加到某个现有的表空间,并且需要对现有数据进行重新均衡时,就调用该进程。该进程异步地执行重新均衡工作。 | 所有 |
db2resyn | 重新同步管理器进程,用于支持使用两阶段提交的应用程序 | 所有 |
db2srvlst | 该进程用于管理系统(如 OS/390)的地址列表。 | 所有 |
db2sysc | 主 DB2 系统控制器或引擎。如果没有该进程,数据库服务器就不能运行。 | 所有 |
db2syslog | 系统记录器进程。该进程写到操作系统的错误日志工具。在 UNIX 上,必须通过编辑文件 syslog.conf 才能启用该进程。在 Windows 上,DB2 将自动编写 Windows 事件日志。 | 所有 |
db2wdog | DB2 看守程序。在 UNIX 中,该进程是必需的,因为 UNIX 中的进程只能跟踪其父进程的标识。每次新进程启动时,db2gds 就会通知 DB2 看守程序。如果任何 DB2 进程接收到 ctrl-c 或其它异常信号,该进程就会向看守程序发送信号,而看守程序会将信号传播给实例中其它所有进程。 | 只适用于 UNIX |
dlasync | DB2 数据链路(Data Link)(文件管理器)服务器的监视器。仅当 DB2 配置了数据链路时该进程才存在。 | 只适用于数据链路 |
进程名 | 描述 | 适用范围 |
db2agent | DB2 协调程序代理程序,它代表应用程序执行所有数据库请求。除非启用了连接集中器,否则每个已连接的应用程序都将有一个 db2agent 进程。 如果启用了分区内并行性,那么 db2agent 进程将调用 DB2 子代理程序来执行工作,并且它们会将结果集返回给协调程序代理程序,再返回给应用程序。
在分区数据库中,协调程序代理程序将位于应用程序连接到的分区上。
| 所有 |
db2agentg | DRDA 应用程序请求器(Application Requester)的网关代理程序。 | 所有 |
db2agnsc | 并行恢复代理程序。在前滚和重新启动恢复的过程中使用该代理程序来并行地执行日志中的操作。与串行恢复相比,这可以缩短恢复时间。 注:该进程支持已记录事务中的并行性以及并行事务之间的并行性。
| 所有 |
db2agnta | 空闲的子代理程序,过去协调代理曾使用过,并且现在仍然与协调代理进程关联。 当 INTRA_PARALLEL dbm cfg 参数设置成 YES 时会出现该进程。
| 所有 |
db2agntp | 这是一个子代理程序,它代表与之相关的协调代理执行当前工作。这些进程提供了分区内并行性,也就是在数据库实例/分区中并行地执行查询的能力。 当 INTRA_PARALLEL dbm cfg 参数设置成 YES 时会出现该进程。
| 所有 |
db2ipccm | IPC 通信管理器。每个数据库分区就有一个这样的管理器。这是用于本地客户机连接的进程间通信侦听器。 本地客户机连接是由运行 DB2 服务器的同一台计算机上的某个应用程序(如 CLP)建立的连接。
| 所有 |
db2tcpcm | TCP 通信管理器。它充当 TCP/IP 连接请求的通信侦听器。当侦听器接收到连接请求时,它就将连接与代理程序相关联,然后再继续侦听更多连接请求。 | 所有 |
db2tcpdm | 用于 TCP/IP 发现请求的通信侦听器。当配置助手(CA)在网络中搜索远程 DB2 服务器及其数据库时,它就会发出发现请求。 | 所有 |
db2snacm | SNA/APPC 通信管理器。它充当 SNA/APPC 连接请求的通信侦听器。当侦听器接收到连接请求时,它就将连接与代理程序相关联,然后再继续侦听更多连接请求。 | 所有 |
进程名 | 描述 | 适用范围 |
db2dlock | 本地死锁检测器,每个数据库分区就有这样一个检测器。它扫描锁定列表,并查找死锁情形。当遇到死锁情形时,其中涉及的某个应用程序/事务就被选做“牺牲品”并被回滚。 | 所有 |
db2estor | 用于复制数据库缓冲池和扩充存储器之间的页面。仅当启用了数据库的扩充存储器时这些进程才出现。 | 所有 |
db2event | 事件监视器进程。每个活动的事件监视器,每个活动的数据库就会有一个 db2event 进程。这些进程捕获已定义的“事件”并写到为事件监视器指定的输出文件。 | 所有 |
db2loggr | 数据库日志阅读器。该进程在执行下列操作时读取数据库日志文件: 事务处理(即回滚)
重新启动恢复
前滚操作
| 所有 |
db2loggw | 数据库日志记录器。该进程使用日志缓冲区的日志记录对磁盘上的日志文件进行刷新。 | 所有 |
db2logts | 该进程用于收集有关当某个表空间被修改时哪些日志是活动的历史信息。该信息记录在数据库目录的 DB2TSCHG.HIS 文件中。通过启用跳过操作(即跳过前滚操作不需要的那些日志文件),可以使用该进程来加速表空间前滚恢复。 | 所有 |
db2pclnr | 缓冲池页面清除程序。这些进程以异步方式将“脏”页面从缓冲池写回到磁盘。“脏”页面是这样一个页面:在将该页面读入缓冲池后对其进行过更改,并且磁盘上的映像与缓冲池中的映像不再一样。 当页面清除程序被“触发”时,它们将同时全部运行。一旦它们完成其分配的工作,就进入睡眠状态,直到被再次触发。
页面清除程序的任务是确保缓冲池有空间可以容纳正在被应用程序检索的新页面。
每个数据库的页面清除程序的数量是通过 NUM_IOCLEANERS 数据库配置参数配置的。
| 所有 |
db2pfchr | 缓冲池预取程序。这些进程代表应用程序在读取数据和索引信息之前,从磁盘读该信息并且将该信息读入数据库缓冲池。预取程序异步地执行这个“预读(read-ahead)”操作。 代表应用程序进行工作的 DB2 代理程序发送预取请求,预取程序为这些请求提供服务。预取程序执行大块 I/O 来更有效地读取数据。每个数据库的预取程序的数量是由 NUM_IOSERVERS 数据库配置参数配置的。
| 所有 |
进程名 | 描述 | 适用范围 |
db2bm | 备份/恢复缓冲区操纵器。该进程用于在备份操作过程中从表空间进行读取,以及用于在恢复操作过程中写到表空间。通过 BACKUP 或 RESTORE 命令配置的每个备份/恢复缓冲区都将有一个 db2bm 进程。 | 所有 |
db2fmp | 这是一些受防护的进程,用于在防火墙外的服务器上运行用户代码,这些代码 既有存储过程, 又有用户定义的函数。 db2fmp 始终是独立的进程,但是根据它执行的例程类型,也可能是多线程的。
注:该进程替换了 DB2 以前版本中使用的 db2udf 和 db2dari 这两个进程。
| 所有 |
db2lbs | LOAD LOB 扫描程序。仅当装入工具正在装入带有 LOB 列的表时才使用它们。这些进程扫描表的 LOB 对象,并将该信息读回表中。 | 所有 |
db2lbmX | LOAD 缓冲区操纵器。最后一个字符“X”表示一或更大的数字。该进程将已装入的数据写到数据库,并且可能涉及到异步 I/O。“X”始终是 1,不过通常也会是更大的数字,这取决于试探值(heuristic)。试探值取决于系统上的 CPU 数以及被写的容器数。 这个“智能的缺省值”可能会被 LOAD 命令的 DISK_PARALLELISM 修饰符覆盖。
我们应当明白,这个异步 I/O 不是某些操作系统支持的异步文件 I/O;它只意味着我们有一些写 I/O 的独立进程。这意味着,正在格式化数据的其它进程不用被 I/O 等待所束缚。
| 所有 |
db2lfrmX | LOAD 格式化程序进程。最后一个字符“X”表示一或更大的数字。该进程将输入数据格式化成内部格式。它始终出现在 LOAD 中。该进程使用了智能的缺省值,它可能会被 CPU_PARALLELISM 修饰符覆盖,以选择最佳的 CPU 数。 | 所有 |
db2lfs | 当被装入的表包含 LONG VARCHAR 列时则使用这些进程。这些进程用来读和格式化表中的 LONG VARCHAR 列。 | 所有 |
db2lmr | 这是一个 LOAD 媒体阅读器(Media Reader)进程。它读取装入输入文件,一旦读完所有输入文件,该进程就会消失。甚至在整个装入操作完成之前该进程就会消失。 | 所有 |
db2lmwX | 这些是 LOAD 媒体记录器进程。最后一个字符“X”表示一或更大的数字。 如果为 LOAD 命令指定了“装入副本(load copy)”选项,那么该进程将生成装入副本。装入副本本质上就是装入到表中的数据备份。
这些媒体记录器与 BACKUP 和 RESTORE 使用的媒体记录器相同。就象在命令行上描述的那样,每个复制会话调用一个媒体记录器(您可以创建多个文件的装入副本)。如果没有装入副本,则没有媒体记录器。它们根据数据的类型在装入时从其它进程获取输入,但是,由缓冲区操纵器写的每位数据通常都将被传递到媒体记录器。就如同其它所有的进程那样,它们由装入代理程序控制。
| 所有 |
db2lrid | 该进程在 LOAD 期间执行索引排序,并构建索引记录标识(Record ID,RID)。 该进程不会出现在非并行数据库实例(即禁用 INTRA_PARALLEL 的实例)中。该进程执行的任务由非并行实例中的格式化程序 EDU 完成。
该进程完成下列三种功能:
SMP 同步
分配 RID,最后一个将构建索引
控制 LOAD 格式化程序进程的同步
| 所有 |
db2ltsc | LOAD 表扫描程序。这些进程扫描数据对象,查找被装入的表,并读取 LOAD 工具的信息。在 LOAD 追加操作过程中使用这些进程。 | 所有 |
db2linit | LOAD 初始化子代理程序。这个子代理程序获取数据库分区上必需的资源,并将应答序列化,返回给装入目录子代理程序。 | 只适用于多分区数据库环境 |
db2lcata | LOAD 目录子代理程序。这个子代理程序只在目录分区上执行,它负责: 衍生初始化子代理程序
处理其应答
存储目录分区上的锁信息。
该目录子代理程序还查询系统目录表以确定哪些分区用于数据分割和分区。
正常的装入作业只有一个目录子代理程序。异常情况是装入无法获取某些分区上的装入资源。如果数据库分区上的设置错误被隔离出来,那么协调程序将从装入的内部分区列表除去发生故障的分区,并衍生一个新的目录子代理程序。这一过程会重复进行,直到成功获取所有分区上的资源,或者在所有分区上都遇到了故障。
| 只适用于多分区数据库环境 |
db2lpprt | 装入预分区子代理程序。这个子代理程序将输入数据从一个输入流预分区成多个输出流,每个分区子代理程序都有一个这样的进程。 每个输入流都将有一个预分区子代理程序。
| 只适用于多分区数据库环境 |
db2lpart | 装入分区子代理程序。这个子代理程序将输入数据分区成多个输出流,将写入数据的每个数据库分区都有一个这样的进程。 分区子代理程序的数量可以由用户进行配置。缺省数量取决于输出数据库分区的总数。
| 只适用于多分区数据库环境 |
db2lmibm | 装入微型缓冲区操纵器子代理程序进程。 如果为装入使用了 partition_only方式,那么该子代理程序就编写分区的输出文件。
每个输出数据库分区就有一个微型缓冲区操纵器子代理程序。
| 只适用于多分区数据库环境 |
db2lload | 装入子代理程序进程。这个子代理程序负责完成每个数据库分区上的装入操作。它衍生格式化程序、ridder、缓冲区操纵器和媒体记录器 EDU,并监视它们的工作。 每个输出数据库分区都有一个装入子代理程序。
| 只适用于多分区数据库环境 |
db2lrdfl | 装入读文件子代理程序进程。这个子代理程序读取给定数据库分区上的消息文件,并将数据发送回客户机。每个输出分区、分区的分区和预分区的分区都有一个读文件子代理程序。 | 只适用于多分区数据库环境 |
db2llqcl | 装入查询清除子代理程序进程。这个子代理程序从给定分区除去所有装入临时文件。 每个输出分区、分区的分区和预分区的分区都有一个清除子代理程序。
| 只适用于多分区数据库环境 |
db2lmitk | 装入微型任务子代理程序进程。这个子代理程序释放了在某次从游标调用的装入或 CLI 装入中使用的所有 LOB 定位器。 运行在协调程序分区上的每个游标/CLI 装入都有一个微型任务子代理程序。
| 只适用于多分区数据库环境 |
db2lurex | 装入用户出口子代理程序进程。这个子代理程序运行用户的文件传送命令。 使用文件传送命令选项的每个装入作业都将有一个用户出口子代理程序。
| 只适用于多分区数据库环境 |
db2lmctk | 该进程用于持有、释放或降级(downgrade)目录分区上持有的由于装入而产生的锁。 | 只适用于多分区数据库环境 |
d2med | 这些进程对用于 LOAD、备份和恢复的数据库表空间进行读和/或写操作。 它们将已格式化页面中的数据写到表空间容器。
| 所有 |
db2reorg | 该进程用于执行 DB2 V8.1 中新的联机 — 就地重组操作。该进程的工作原理类似于磁盘整理碎片工具,它以特定的顺序放置数据行。 | 所有 |
进程名 | 描述 |
db2dasrrm.exe | DB2 管理服务器(Admin Server)进程。通过使用 DB2 控制中心(Control Center),该进程支持本地和远程管理请求。 |
db2dasstm.exe | DB2 管理服务器工具 DB 管理器进程。如果已经在 DB2 服务器上设置了该进程,那么它就会将信息存入工具数据库,并从工具数据库检索信息。 |
db2fmp.exe | 该进程处理/执行所有受防护的存储过程和 UDF。 |
db2rcmd.exe | DB2 远程命令服务(Remote Command Service),它自动处理分区间的管理通信。 |
db2jds.exe | DB2 JDBC applet 服务器服务。该服务拦截和处理连接到 DB2 服务器的所有 JDBC 应用程序。 |
db2licd.exe | DB2 许可证守护程序。该进程验证 DB2 启动时正确的 DB2 许可证是否安装到了服务器上。 |
db2sec.exe | 在 Windows 的 DB2 服务器上使用该进程来检查用户标识和密码。由于 DB2 依赖于操作系统级别的认证,因此,当某个用户或应用程序连接到服务器上的数据库时,使用该进程验证用户标识和密码。当将认证设置为 SERVER 时,或者当连接是从非安全的操作系统建立的时候,就会进行这一认证。 |
db2syscs.exe | Windows 上的主要 DB2 系统控制器或引擎。EDU 是该进程中的线程。 请注意末尾的“s”代表 Windows 服务。
|
IWH2SERV.EXE | 仓库管理器中心(Warehouse Manager Center)。该中心作为 DB2 ESE 的一部分(而不是 DB2 引擎的一部分)安装。 |
下表可能是一个非常有用的索引,可以用它来找到给定的进程。它以字母顺序列出了所有进程,并且带有到上述表的链接。