EXEC模块是目标DMDRS服务的核心组成模块,主要功能为接收CPT模块发送的全量装载数据或者增量同步数据,在目标数据库进行同步执行,实现数据实时同步。同时,EXEC模块也可以从DSS流式存储中获取同步数据并应用到目标数据库。
介绍EXEC模块相关的查看命令。
适用场景
数据迁移、数据同步、数据分发
命令功能
查看指定EXEC模块或对端模块的统计信息。
命令格式
命令格式一:
查看第一个EXEC模块和对端模块的统计信息。
EXEC
说明
- 数据同步场景,查看EXEC模块的统计信息和第一个站点对应的CPT模块的统计信息。
- 数据分发场景,查看EXEC模块的统计信息和第一个站点对应的DSS模块生产者列表信息。
命令格式二:
查看指定EXEC模块的整体统计信息或站点详细统计信息。
SHOW [<EXEC_NAME>] [<SITE_ID>] [STATE]
说明命令格式中EXEC_NAME和STATE至少需写其中一个。
- 省略模块名,默认为查看第一个EXEC模块的统计信息。
- 省略state,默认为查看当前模块的统计信息。
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS的站点号。配置后仅显示该站点的详细统计信息。 |
命令示例
在数据同步场景中,查看EXEC模块和对端CPT模块的统计信息。
exec
查看结果为:
查看名称为“exec_dm8”的EXEC模块的统计信息。
show exec_dm8 state
查看结果为:
查看名称为“exec_dm8”的EXEC模块中,ID为1的站点的详细统计信息。
show exec_dm8 1 state
查看结果为:
结果说明
说明CPT统计信息的参数说明请参见6.2.1.1 查看统计信息章节。
| 参数 | 说明 |
|---|---|
| 公共内存池使用情况 | 公共内存池当前已使用大小/公共内存池总大小。 |
| 工作线程信息 | 活动数(Y/X):目标DMDRS总共有X个工作线程,其中Y个工作线程处于非空闲状态。 执行等待(X):X个工作线程正在等待执行事务。 提交等待(X):X个工作线程正在等待提交事务。 执行(X):X个工作线程正在执行事务。 提交(X):X个工作线程正在提交事务。 异常线程号(ID):若存在异常工作线程,则ID为异常工作线程的ID。若不存在异常工作线程,显示为(-)。 |
| 检查点线程状态 | 包括:空闲、准备中、收集事务、保存事务、正在结束、保存完成、释放事务和执行完成。 |
| 站点ID | 数据来源设置的站点ID。 |
| 接收状态 | 接收数据的状态。包括:准备、查询LSN、查询续传状态、重置、分解操作、检查操作、清理站点、连接中、空闲、接收完成、缓存区满和退出。 |
| 接收日志时间 | 接收的日志的时间戳。 |
| 活动事务(个) | 未接收到提交操作的事务个数。 |
| 等待执行事务(个) | 等待执行的提交事务个数。 |
| 正在执行事务(个) | 正在执行的提交事务个数。 |
| 接收字节数(MB) | 本次运行起,接收的字节总数以及实时接收速率。 |
| 入库消息字节数(MB) | 已入库消息的总字节数。 |
| 影响行数(行) | 已经执行的事务共影响了多少行。 |
| 处理操作状态 | 接收线程对当前接收操作的处理状态。包括:退出、空闲、DML操作、DDL操作、提交操作、回滚操作、部分回滚操作、解压缩DML操作、等待缓冲区、获取数据、空闲、添加时间戳、组织LOB、执行挂起和源活执行。 |
| 私有内存池使用情况 | 私有内存池已使用的大小/站点私有内存池的总大小。 |
| 接收日志数 | 本次运行起,接收的日志总行数。 |
| 起始接收日志LSN | 开始接收的日志LSN。 |
| 最新接收日志LSN | 最新接收的日志LSN,表示小于该时间的操作都已经执行或者存盘。 |
| 最新接收日志时间 | 最新接收的日志的时间戳。 |
| 活动大对象(个) | 未接收完成的大对象个数。 |
| 已执行事务(个) | 已经执行的提交事务个数。 |
| 检查点占用磁盘(MB) | 检查点文件占用的磁盘空间大小。 |
| 检查点LSN | 最新执行的检查点LSN。 |
| 检查点LSN日志时间 | 检查点LSN的日志时间。如果暂时没有检查点日志,则显示“暂未执行”。 |
| 回滚事务(个) | 回滚事务的个数。 |
适用场景
数据迁移、数据同步、数据分发
命令功能
查看指定EXEC模块的所有或指定工作线程的信息以及事务信息,如线程号、状态、锁类型、操作表、影响速率和事务号等。
命令格式
命令格式一:
查看第一个EXEC模块的所有工作线程的信息以及事务信息。
THR
命令格式二:
查看指定EXEC模块或者第一个EXEC模块的所有或指定工作线程的信息以及事务信息。
SHOW [<EXEC_NAME>] THR [LOAD] [<THRID>] [TRX|CURTRX] [EXEC]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| LOAD | 只查询装载工作线程。不配置该参数查询非装载工作线程。 |
| THRID | 工作线程号。 |
| TRX | 查询工作线程执行队列上的事务信息。 |
| CURTRX | 查询工作线程的当前作为合并基准的事务信息。 |
| EXEC | 只查询正在执行工作线程的线程信息和事务信息。不配置该参数查询所有工作线程。 |
命令示例
查看名称为“exec_dm8”的EXEC模块的非装载工作线程信息。
show exec_dm8 thr
查看结果为:
查看名称为“exec_dm8”的EXEC模块中,线程号为1的非装载工作线程信息。
show exec_dm8 thr 1
查看结果为:
查看名称为“exec_dm8”的EXEC模块的装载工作线程信息。
show exec_dm8 thr load
查看结果为:
查看名称为“exec_dm8”的EXEC模块的工作线程执行队列上的事务信息。
show exec_dm8 thr trx
查看结果为:
查看名称为“exec_dm8”的EXEC模块的当前事务信息。
show exec_dm8 thr curtrx
查看结果为:
查看名称为“exec_dm8”的EXEC模块的当前工作线程执行情况。
show exec_dm8 thr exec
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 线程号 | 工作线程的编号。 |
| 会话ID | 数据库连接的会话ID。 |
| 状态 | 工作线程的状态。包括:退出、暂停、获取事务、注册、空闲、唤醒工作线程、加载检查点、切换分组、取消注册、清空上下文、等待释放操作、字典上锁、重置执行环境、提取操作、解析DML操作、描述字典、执行操作转换、描述操作、合并操作、准备快装、填充快装、准备语句、绑定数据、填充数据、输出跟踪、等待线程执行、执行、重连数据库、提交、提交准备、等待线程提交、执行DDL、保存ROWID、准备补写LOB、写入大对象、分裂执行、连接数据库和等待唤醒。 |
| 站点 | 事务所属的站点名。 |
| 站点号 | 当前执行事务所属的站点号。 |
| 分组号 | 事务所属的分组号。 |
| 分组对象 | 事务所属的分组对象。 |
| 锁类型 | 当前操作的表需要上锁的类型。 |
| 等待线程号 | 该线程如需要等待其他线程先执行,则为先执行的线程编号。该线程如不需要等待其他线程先执行,则为空。 |
| 操作表 | 当前执行事务操作的模式名和表名。 |
| 影响速率 | 单位时间内,工作线程执行的操作行数。 |
| 事务数 | 本次需要执行的事务总数。 |
| 操作数 | 本次需要执行的操作总数。 |
| 序列号 | 第一个事务的起始LSN。 |
| 锁表数 | 本次所有事务需要上锁的表的数目。 |
| 开始时间 | 本次执行的开始时间。 |
| 当前事务ID | 当前正在执行的事务ID。 |
| 任务数 | 当前正在执行的事务的操作总数。 |
| 起始号 | 当前正在执行的事务的第一个操作的编号。 |
| 当前号 | 当前正在执行的事务的当前操作的编号。 |
| 结束号 | 当前正在执行的事务的最后一个操作的编号。 |
| 当前LSN | 当前正在执行的操作的LSN。 |
| 操作 | 当前执行的操作的类型。 |
| 绑定行数 | 当前语句绑定的行数。 |
| SQL | 当前正在执行的SQL语句。 |
| 起始日志LSN | 事务的起始LSN。 |
| 提交日志LSN | 事务的提交LSN。 |
| 事务掩码 | 事务上记录的掩码,用于显示事务的执行状态。 |
| 操作行数 | 事务包含的日志操作的行数。 |
| 大对象分片数 | 事务包含的大对象分片的数量。 |
| 当前合并事务ID | 当前工作线程作为合并基准的事务的事务号。 |
| 当前合并OP | 当前工作线程作为合并基准的操作的类型。 |
| 当前合并操作LSN | 当前工作线程作为合并基准的操作的LSN。 |
| 当前合并操作OP_ID | 当前工作线程作为合并基准的操作的OP_ID。 |
适用场景
数据同步、数据分发
命令功能
查看指定EXEC模块同步表的延迟信息,如同步对象、当前操作行数、最新同步LSN、最新执行时间和表同步延迟等。可以根据站点ID/分组ID仅展示指定站点/分组的表。
注意当源数据库和源DMDRS所在的操作系统间存在时间差时,将无法准确地显示延迟时间。
命令格式
SHOW [<EXEC_NAME>] [<SITE_ID>] LAG [GROUPID <GROUPID>] [ROW <ROW_NUM>] [MIN_SEC <MIN_SEC>] [MAX_SEC <MAX_SEC>] [OBJNAME <SCHNAME>.<TABNAME>]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS服务的站点号。配置后仅显示该站点的同步表的延迟信息。 |
| GROUPID | 分组ID。 |
| ROW_NUM | 控制单个分片的行数。取值范围:1~1000,默认值为1000。 |
| MIN_SEC | 最小延迟时间。取值范围:0~86400,单位:秒。配置后仅显示表同步延迟大于该参数的延迟信息。 |
| MAX_SEC | 最大延迟时间。取值范围:0~86400,单位:秒。配置后仅显示表同步延迟小于该参数的延迟信息。 |
| <SCHNAME>.<TABNAME> | 按模式名.表名查看指定表的操作统计信息。模式名和表名都支持模糊查询,具体如下: *:所有模式或表。 A*:前缀为A的所有模式或表。 *B:后缀为B的所有模式或表。 A*B:前缀为A且后缀为B的所有模式或表。 |
命令示例
查看名称为“exec_dm8”的EXEC模块同步表的延迟信息。
show exec_dm8 lag
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 站点 | 数据来源的名称。 |
| 站点ID | 数据来源设置的站点ID。 |
| 分组ID | 配置时设置的分组ID。 |
| 同步对象 | 查看的同步表对应的数据库名、模式名和表名。 |
| 当前插入数 | 已执行插入操作数。 |
| 当前更新数 | 已执行更新操作数。 |
| 当前删除数 | 已执行删除操作数。 |
| 最新同步LSN | 最近一次同步的日志LSN。 |
| 最新执行时间 | 最近一次同步的时间,如果是装载的表则为最近一次执行的时间。 |
| 表同步延迟(秒) | 最近一次同步的延迟,如果是装载的表则没有该信息。单位:秒。 |
适用场景
数据迁移、数据同步、数据分发
命令功能
查看指定EXEC模块所在链路的整体同步延迟时间和网络延迟时间。
注意当源数据库和源DMDRS所在的操作系统间存在时间差时,将无法准确地显示同步延迟时间。
命令格式
SHOW [<EXEC_NAME>] [<SITE_ID>] LINK LAG [NET]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS服务的站点号。配置该参数后仅显示该站点的延迟信息。 |
| NET | 配置该参数后,按毫秒为单位显示源DMDRS和目标DMDRS间网络延迟。 |
命令示例
查看名称为“exec_dm8”的EXEC模块的整体延迟信息。
show exec_dm8 link lag
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 站点 | 数据来源的名称。 |
| 站点ID | 数据来源设置的站点ID。 |
| 整体延迟(秒) | 链路的整体延迟时间。 |
注意整体延迟时间小于1秒,表示该链路不存在同步延迟。
适用场景
数据迁移、数据同步、数据分发
命令功能
查看指定EXEC模块所有分组信息或指定分组的详细信息,如优先级、执行策略、合并策略、最大线程数等。
命令格式
SHOW [<EXEC_NAME>] [<SITE_ID>] GROUP [<GROUPID> [<SCHNAME>.<TABNAME>]]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS服务的站点号。配置后仅显示该站点的分组信息。 |
| GROUPID | 指定分组ID。 |
| <SCHNAME>.<TABNAME> | 模式名.表名。按模式名.表名查看指定分组下的对象信息。模式名和表名都支持模糊查询,具体如下: *:所有模式或表。 A*:前缀为A的所有模式或表。 *B:后缀为B的所有模式或表。 A*B:前缀为A且后缀为B的所有模式或表。 |
命令示例
查看名称为“exec_dm8”的EXEC模块的所有分组的详细信息。
show exec_dm8 group
查看结果为:
查看名称为“exec_dm8”的EXEC模块的分组ID为35的分组信息。
show exec_dm8 group 35
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 站点 | 数据来源的名称。 |
| 站点ID | 数据来源设置的站点ID。 |
| 分组ID | 配置时设置的分组ID。 |
| 名称 | 站点各分组的名称。 |
| 优先级 | 该分组相较其他分组的优先等级,值越大的优先级越高。 |
| 执行策略 | 该分组中的事务执行时的策略。
|
| 合并策略 | 该分组中的事务合并的策略。
|
| 最大线程数 | 该分组允许的最大线程数。 |
| 最新提交LSN | 该分组最新执行完成的事务的提交LSN。 |
| 同步表数 | 当前分组管理的所有同步表数量。 |
| 最大同步延时 | 当前分组管理的所有同步表中最大的延时。 |
| 分组对象数(x/y) | 该分组的活动对象数/对象总数。 x:该分组的活动对象数。 y:该分组的对象总数。 |
| 对象名 | 该分组下的对象,如果执行策略是并行,那么每张表为一个对象,否则所有表的集合为一个对象。 |
| OBJ MD5 | 对象名的MD5值。 |
| 提交LSN | 该对象最新执行完成的事务的提交LSN。 |
| 占用线程数 | 当前对象占用的工作线程数量。 |
| 检查点(个) | 当前对象待执行的检查点个数。 |
| 待执行事务(个) | 当前对象内存中等待执行的事务个数。 |
| 正在执行事务(个) | 当前正在执行的事务个数。 |
适用场景
数据迁移、数据同步、数据分发
命令功能
查看指定EXEC模块的所有或指定的活动事务信息,如事务ID、起始日志LSN、当前日志LSN、当前日志时间戳和操作行数等。
说明在目标DMDRS服务中事务分为活动事务、等待执行事务和正在执行事务。
- 活动事务:未接收到提交操作的事务。
- 等待执行事务:等待执行的提交事务。
- 正在执行事务:正在执行的提交事务。
命令格式
命令格式一:
查看第一个EXEC模块的所有活动事务信息。
TRX
命令格式二:
查看指定的EXEC模块或者第一个EXEC模块的所有或指定的活动事务信息。
SHOW [<EXEC_NAME>] [<SITE_ID>] TRX [<TRXID>] [<NUMBER>]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS服务的站点号。配置后仅显示该站点的活动事务信息。 |
| TRXID | 事务ID。 |
| NUMBER | 事务内信息个数,默认值为10。 |
命令示例
查看名称为“exec_dm8”的EXEC模块的活动事务信息。
show exec_dm8 trx
查看结果为:
查看名称为“exec_dm8”的EXEC模块的活动事务为1610460的3条详细信息。
show exec_dm8 trx 1610460 3
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 站点 | 数据来源的名称。 |
| 站点ID | 数据来源设置的站点ID。 |
| 事务ID | 当前活动事务的事务号。 |
| 起始日志LSN | 该活动事务的起始LSN。 |
| 起始日志时间戳 | 起始日志LSN对应的时间戳。 |
| 当前日志LSN | 该活动事务当前接收到的最新日志的LSN。 |
| 当前日志时间戳 | 当前日志LSN对应的时间戳。 |
| 操作行数 | 该活动事务当前接收包含的操作数。 |
| SQL | 该活动事务当前正在执行的SQL。 |
适用场景
数据同步、数据分发
命令功能
查看指定EXEC模块的检查点信息,如最新检查点LSN日志时间、检查点状态,执行时间、占用磁盘大小等。
命令格式
SHOW [<EXEC_NAME>] [<SITE_ID>] CKPT
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| SITE_ID | 源DMDRS服务的站点号。配置后仅显示该站点的检查点信息。 |
命令示例
查看名称为“exec_dm8”的EXEC模块的检查点信息。
show exec_dm8 ckpt
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 站点 | 数据来源的名称。 |
| 站点ID | 数据来源设置的站点ID。 |
| 最新检查点LSN | 最近一次执行的检查点LSN,小于该LSN的操作都被执行或者存盘。 |
| 最新检查点LSN日志时间 | 检查点LSN的日志时间。 |
| 检查点状态 | 检查点的状态。包括:空闲、准备中、收集事务、保存事务、正在结束、保存完成、释放事务和执行完成。 |
| 执行时间 | 检查点执行的开始时间。 |
| 检查点数 | 当前站点的检查点文件个数。 |
| 占用磁盘大小 | 该站点所有检查点文件占用磁盘的空间大小,单位:MB。 |
适用场景
数据同步、数据分发
命令功能
查看指定EXEC模块所有同步表的字典信息,如表ID、模式名、表名、属性、状态和引用计数,或者查看指定表ID或表名的字典结构信息,如列ID、列名、数据类型和精度等。
命令格式
SHOW [<EXEC_NAME>] DICT [<ID>|<TABLE_NAME>]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| ID | 字典列表信息中的表ID。 |
| TABLE_NAME | 字典列表信息中的表名。 |
命令示例
查看名称为“exec_dm8”的EXEC模块同步表的字典信息。
show exec_dm8 dict
查看结果为:
查看名称为“exec_dm8”的EXEC模块中,ID为13607的字典的表结构信息。
show exec_dm8 dict 13607
查看结果为:
查看名称为“exec_dm8”的EXEC模块中,表名为DB2_INS054_TAB1的字典的表结构信息。
show exec_dm8 dict DB2_INS054_TAB1
查看结果为:
结果说明
| 参数 | 说明 |
|---|---|
| 表ID | 字典的表ID。 |
| 模式名 | 字典描述的模式名。 |
| 表名 | 字典描述的表名。 |
| 属性 | 字典的属性。 KEY:有主键。 IDX:有索引。有主键时不额外展示该属性。 LOB:有大对象列。 RA:有ROWID辅助列。 ERR:字典存在错误。 LOAD:表正在装载或表装载失败。 FILT:表被终止同步。 |
| 状态 | 字典的状态。 READY:已准备好。 FREE:已释放。 |
| 引用计数 | 当前该字典的使用数。 |
| 列ID | 该字典表结构对应的列ID。 |
| 列名 | 列ID对应列的名称。 |
| 数据类型 | 该列数据的类型。 |
| 精度 | 数字的位数。 |
| 标度 | 数据小数点后的数字位数。 |
| 允许为空 | 该列数据是否允许为空。
|
适用场景
数据同步、数据分发
命令功能
查看指定EXEC模块的全部或指定参数的配置信息,包括类别、配置项、配置值、默认值和配置说明。
命令格式
SHOW [<EXEC_NAME>] CONF [<PARA_NAME>]
参数说明
| 参数 | 说明 |
|---|---|
| EXEC_NAME | EXEC模块的名称,对应配置文件中EXEC模块的“name”参数。 |
| PARA_NAME | 参数名称。 |
命令示例
查看名称为“exec_orcl”的EXEC模块的全部配置信息。
show exec_orcl conf
查看结果为:
该结果截图仅为部分配置信息示例。
文章
阅读量
获赞
