注册
达梦数据复制软件DMDRS配置参数-EXEC模块功能参数
专栏/数+融合专栏/ 文章详情 /

达梦数据复制软件DMDRS配置参数-EXEC模块功能参数

达梦数+数据融合软件(DMDF)产品团队 2026/08/06 95 0 0
摘要 介绍DMDRS EXEC模块的功能配置参数。

4.2 功能参数

介绍EXEC模块的功能参数。

4.2.1 ap_port

参数含义

DMAP的监听端口号。

参数说明

该参数仅适用于DM7/DM8数据库。当使用备份还原恢复功能装载数据时,DMDRS会借助DMAP进程进行相关操作。如果DMAP未使用默认的监听端口4236时,可以使用该参数对DMDRS进行配置。

参数值

取值范围:0~65535,默认值为4236。

参数语法

<ap_port></ap_port>

参数示例

<ap_port>4236</ap_port>

4.2.2 buckets

参数含义

建表操作的分桶数量。

参数说明

该参数仅适用于Doris数据库。

该参数主要用于控制目标DMDRS建表时指定的分桶数量,配置的参数值即为建表时的分桶数。

参数值

取值范围:1~255,默认值为10。

参数语法

<buckets></buckets>

参数示例

<buckets>10</buckets>

4.2.3 char_code

参数含义

目标DMDRS的字符集。

参数说明

数据字符集编码转换功能具体如下:

  • 当源DMDRS的字符集配置与源数据库的字符集一致时,源DMDRS对源数据库数据的编码不进行转换;当源DMDRS的字符集配置与源数据库的字符集不一致时,源DMDRS会将源数据库数据的编码转换为源DMDRS的字符集后向下一级投递。

  • 当源DMDRS的字符集与目标DMDRS的字符集配置一致时,目标DMDRS对收到的数据的编码不进行转换,直接传给目标数据库驱动;当源DMDRS的字符集与目标DMDRS的字符集配置不一致时,目标DMDRS会将收到的数据的编码转换为目标DMDRS的字符集后传给目标数据库驱动。

  • 当目标DMDRS的字符集配置与目标数据库的编码一致时,目标数据库驱动对数据的编码不进行转换直接入库;当目标DMDRS的字符集配置与目标数据库的编码不一致时,目标数据库驱动会将数据的编码从目标DMDRS的字符集转化为目标数据库的字符集后入库。

以下表为例介绍数据编码转换的几种情况。

源数据库字符集 源DMDRS字符集 源DMDRS编码转换情况 目标DMDRS字符集 目标DMDRS编码转换情况 目标数据库驱动编码转换情况 目标数据库字符集
A A 不转换 A 不转换 不转换 A
A B 源DMDRS转换字符集为B B 不转换 不转换 B
A A 不转换 B 目标DMDRS转换字符集为B 不转换 B
A A 不转换 A 不转换 目标数据库驱动转换字符集为B B

源DMDRS的字符集(参见3.2.3 char_code章节)和目标DMDRS的字符集具体配置如下所示。

说明

数据的编码转换会影响DMDRS的性能,用户可根据实际场景进行配置来控制数据编码转换的位置。

  • 当源数据库与目标数据库的字符集一致时,无需进行编码转换,建议源DMDRS的字符集和目标DMDRS的字符集均使用默认值,默认值分别为源数据库和目标数据库的字符集。

  • 当源数据库与目标数据库的字符集不一致时,需要进行编码转换,建议根据具体情况选择如下配置:

    • 源DMDRS和目标DMDRS的字符集均使用默认值。该配置的编码转换由目标DMDRS完成。

      • 源DMDRS的字符集使用默认值与源数据库的字符集一致,源DMDRS对数据的编码不进行转换;

      • 源DMDRS投递的数据字符集与目标DMDRS的字符集不一致,目标DMDRS会将收到的数据的编码转换为目标DMDRS配置的字符集后传给目标数据库驱动;

      • 目标DMDRS的字符集使用默认值与目标数据库的字符集一致,目标数据库驱动将不进行编码转换。

    • 源DMDRS的字符集配置为目标数据库的字符集,目标DMDRS的字符集使用默认值即目标数据库的字符集。该配置的编码转换由源DMDRS完成。

      • 源DMDRS的字符集与源数据库字符集不一致,源DMDRS将数据编码转换为源DMDRS的字符集后向下一级投递;

      • 目标DMDRS的字符集使用默认值即源DMDRS与目标DMDRS所配置的字符集一致,目标DMDRS不进行编码转换;

      • 目标DMDRS的字符集与目标数据库的字符集一致,目标数据库驱动将不进行编码转换。

    • 目标DMDRS的字符集配置为源数据库的字符集,源DMDRS的字符集使用默认值即源数据库字符集。该配置的编码转换由目标库驱动完成。

      • 源DMDRS的字符集使用默认值与源数据库字符集一致,源DMDRS对数据不进行编码转换;

      • 目标DMDRS的字符集配置为源数据库字符集与源DMDRS的字符集一致,目标DMDRS不进行编码转换;

      • 目标DMDRS的字符集与目标数据库的字符集不一致,目标数据库驱动将收到的数据(编码为源数据库字符集)转换为目标数据库的字符集。

该参数不适用于DM6目标数据库。

注意
  • 对于DB2数据库,DMDRS的字符集必须配置且需与DB2客户端字符集一致。
  • 目标数据库为PostgreSQL、Kingbase V8(Oracle模式)和GBase 8s时,目标DMDRS的字符集必须配置且需与连接的目标数据库的字符集一致。

参数值

取值范围:UTF-8、GBK和GB18030。默认值为目标数据库的字符集。

参数语法

<char_code></char_code>

参数示例

<char_code>GB18030</char_code>

4.2.4 char_length_expand

参数含义

同步表列精度需要扩大的倍数。

参数说明

同步表DDL过程中,VARCHAR/VARCHAR2类型字段、CHAR类型字段、NVARCHAR/NVARCHAR2类型字段和NCHAR类型字段精度扩大的倍数。

在同步表DDL操作过程中,针对数据库字符集,执行数据入库时,存储的空间需要增加,为保障数据入库的正确性,需要在创建/修改表结构时,扩大字符类型字段的精度。该参数仅影响CHAR、VARCHAR、VARCHAR2、NVARCHAR、NVARCHAR2和NCHAR类型字段。

该参数不适用于Kafka目标数据库。

参数值

取值范围为0,0,0,0~10,10,10,10。其中第一个逗号前数值为VARCHAR/VARCHAR2精度的扩大倍数,第二个逗号前数值为CHAR精度的扩大倍数,第三个逗号前数值为NVARCHAR/NVARCHAR2精度的扩大倍数,第三个逗号后数值为NCHAR精度的扩大倍数。

默认值为0,0,0,0,此时EXEC模块自动调整字符字段精度扩大倍数。

注意

该参数值不能将部分类型字段的扩大倍数配置为0,如n,0,n,n和0,n,0,n。其中n取值为1~10。

参数语法

<char_length_expand></char_length_expand>

参数示例

<char_length_expand>1,1,1,1</char_length_expand>

4.2.5 cluster

参数含义

目标DMDRS的主备功能。

参数说明

该参数是一个功能标签,需要配置它的子项。

参数值

参数语法

<cluster></cluster>

参数示例

<cluster> <mode>master</mode> <buf_size>32</buf_size> <standby> <item> <ip>192.168.20.24</ip> <port>5351</port> <target_name>exec_dm8</target_name> </item> </standby> </cluster>
注意

配置DMDRS主备功能后,需使目标DMDRS主节点和备节点的XML配置文件中除cluster配置项外的其它配置参数保持一致,login配置项中的连接信息均指向目标数据库主节点。

4.2.5.1 arbiter

参数含义

主备决策节点的信息。

参数说明

该参数用来在目标DMDRS主备节点配置主备决策节点的信息。

该参数仅适用于目标数据库为Kafka。该参数是一个功能标签,需要配置它的子项。

参数值

参数语法

<arbiter></arbiter>

参数示例

<arbiter> <ip>192.168.20.26</ip> <port>5345</port> </arbiter>
4.2.5.1.1 ip*

参数含义

主备决策节点的IP地址。

参数说明

参数值

IP地址。

参数语法

<ip></ip>

参数示例

<ip>192.168.20.26</ip>
4.2.5.1.2 port*

参数含义

主备决策节点的Manager模块的端口号。

参数说明

参数值

主备决策节点的Manager模块的端口号。

参数语法

<port></port>

参数示例

<port>5345</port>
4.2.5.2 buf_size

参数含义

主备功能使用的缓冲区大小。

参数说明

该参数的原名为buffer。

DMDRS主备系统初始化启动时,根据buf_size配置的大小,从操作系统一次性申请该大小的内存空间,用于缓存主备数据。

参数值

根据实际情况配置,单位:MB,默认值为32。

参数语法

<buf_size></buf_size>

参数示例

<buf_size>64</buf_size>
4.2.5.3 enable_compress

参数含义

是否启用消息压缩。

参数说明

主节点发送消息到备节点时,是否需要对发送的消息进行压缩。如果启用消息压缩,会消耗额外的CPU,但是会降低网络带宽的占用,请根据实际情况配置。

参数值

  • 0:禁用。默认值为0。

  • 1:启用。

参数语法

<enable_compress></enable_compress>

参数示例

<enable_compress>1</enable_compress>
4.2.5.4 llog_limit

参数含义

目标DMDRS主备的主节点或备节点缓存的LLOG主备数据日志文件的大小上限。

参数说明

  • 当主节点检测到主节点的最新LLOG日志写LSN和备节点LLOG日志应用LSN的差值大于该参数值时,将会将该节点标记为过期节点并根据其他正常备节点的同步进度清理LLOG日志。

  • 当备节点检测到本地缓存的LLOG日志文件大小超过该参数值时,将暂停接收主节点发送过来的LLOG日志。

参数值

取值范围:1024~2147483647,单位:MB。默认值为16384。根据硬盘实际空间大小设置。

参数语法

<llog_limit></llog_limit>

参数示例

<llog_limit>16384</llog_limit>
4.2.5.5 local

参数含义

目标DMDRS服务的IP地址。

参数说明

当目标DMDRS的运行环境为容器等特殊环境,目标DMDRS服务的真实IP可能发生变化时需配置该参数。

注意

在主节点配置了错误的local参数值的情况下执行DMDRS主备切换后,DMDRS主备会因主节点获取到错误的备节点IP而无法再次切换。此时可以通过在新的主节点上配置standby参数来重新指定备节点IP。

参数值

IP地址。默认值为空,此时将由对端节点根据网络连接自动判断本节点的IP地址。

参数语法

<local></local>

参数示例

<local>192.168.60.2</local>
4.2.5.6 mode*

参数含义

主备模式。

参数说明

该参数用于配置EXEC模块启动时作为主节点还是备节点。主备模式的配置只在模块第一次启动时有效,后续可执行命令切换模块的主备节点或者在主节点发生故障后由备节点自动切换。

参数值

  • master:主节点。

  • slave:备节点。

参数语法

<mode></mode>

参数示例

<mode>master</mode>
4.2.5.7 standby

参数含义

备节点的信息。

参数说明

该参数用来在主节点配置一个或多个备节点的信息。当EXEC模块为主节点时,需要配置备节点的信息。

该参数是一个功能标签,需要配置它的子项。

该参数在第一次启动主节点服务后不支持静态修改,可使用DMDRS主备命令动态修改。

参数值

参数语法

<standby></standby>

参数示例

<standby> <item> <ip>192.168.20.24</ip> <port>5351</port> <target_name>exec_dm8</target_name> </item> </standby>
4.2.5.7.1 item*

参数含义

单个备节点的信息。

参数说明

配置此DMDRS服务作为主节点时连接的备节点,如有多个备节点对应配置多个<item></item>标签。

该参数是一个功能标签,需要配置它的子项。

参数值

参数语法

<item></item>

参数示例

<item> <ip>192.168.20.24</ip> <port>5351</port> <target_name>exec_dm8</target_name> </item>

####### 4.2.5.7.1.1 ip*

参数含义

备节点的IP地址。

参数说明

参数值

IP地址。

参数语法

<ip></ip>

参数示例

<ip>192.168.20.21</ip>

####### 4.2.5.7.1.2 port*

参数含义

备节点的Manager模块的端口号。

参数说明

注意

当目标DMDRS的运行环境为容器等需要配置端口映射的特殊环境时,需将Manager模块的端口号映射到相同的主机端口号。

参数值

备节点的Manager模块的端口号。

参数语法

<port></port>

参数示例

<port>5351</port>

####### 4.2.5.7.1.3 target_name*

参数含义

备节点的EXEC模块的名称。

参数说明

参数值

备节点的EXEC模块的名称。

参数语法

<target_name></target_name>

参数示例

<target_name>exec_dm8</target_name>
4.2.5.8 wait_time

参数含义

自动切换时备节点等待主节点恢复的时间。

参数说明

如果超过该时间主节点未恢复,则备节点将成为主节点。

参数值

取值范围:0~600,单位:s,默认值为5。

参数语法

<wait_time></wait_time>

参数示例

<wait_time>5</wait_time>

4.2.6 cvt_dir

参数含义

清洗转换功能使用的CVT脚本文件目录。

参数说明

该文件夹路径下所有的CVT文件可以共同生效。

注意

请勿将除CVT脚本文件外的其它文件放入该目录,该目录可能被清理。

参数值

CVT脚本文件所在目录。

参数语法

<cvt_dir></cvt_dir>

参数示例

<cvt_dir>/home/dmdrs/dmdrs5/bin/drs_script</cvt_dir>

4.2.7 db_receive_timeout

参数含义

DMDRS等待数据库服务端返回消息的超时时间。

参数说明

该参数仅适用于Oracle数据库。0表示不配置超时时间。当需要DMDRS在长时间没有接收到数据库服务端的返回消息时主动退出等待时可以配置该参数,配置后,超过配置的超时时间后服务端仍未返回消息时,DMDRS连接会返回超时错误。超时断开连接下次使用会自动检查并重连。

参数值

取值范围:0~2147483647,默认值为0。单位:s。

参数语法

<db_receive_timeout></db_receive_timeout>

参数示例

<db_receive_timeout>600</db_receive_timeout>

4.2.8 dpi_char_check

参数含义

目标DMDRS是否开启DPI接口的字符完整性检查。

参数说明

该参数仅适用于DM7/DM8目标数据库。开启该参数后,DPI接口将检查字符完整性,对于不完整的字符入库时将截断数据。若要保持数据完全一致,请关闭该参数。

参数值

  • 0:关闭字符完整性检查。

  • 1:开启字符完整性检查。默认值为1。

参数语法

<dpi_char_check></dpi_char_check>

参数示例

<dpi_char_check>1</dpi_char_check>

4.2.9 dss

参数含义

配置DMDSS数据分发功能。

参数说明

当应用数据分发功能时需配置该参数,该参数是一个功能标签,需要配置它的子项。dss参数的配置对应dss元素,配置文件中的dss元素以标签<dss>开始,以标签</dss>结束。

如与多个DSS连接,可使用<item></item>标签指定。配置item数量说明:

  • EXEC模块连接一个DSS模块:只需配置一个item参数。

  • EXEC模块连接多个DSS模块:需同时配置多个item参数。

  • EXEC模块连接一个DSS主备模块:只需配置一个item参数,该item参数可以配置为DSS主节点的信息或DSS备节点的信息。

  • EXEC模块连接多个DSS主备模块:需配置多个item参数,每个item参数可以配置为DSS主备节点的主节点信息或备节点信息。

参数值

参数语法

<dss></dss>

参数示例

  • EXEC模块连接一个DSS模块,只需配置一个item参数。

    <dss> <item> <name>dss_active</name> <ip>192.168.20.24</ip> <port>21234</port> <topic>topic_1</topic> </item> </dss>
  • EXEC模块连接多个DSS模块,需同时配置多个item参数。

    <dss> <item> <name>dss_active1</name> <ip>192.168.20.24</ip> <port>21234</port> <topic>topic_1</topic> </item> <item> <name>dss_active2</name> <ip>192.168.20.21</ip> <port>21234</port> <topic>topic_2</topic> </item> </dss>
4.2.9.1 item

参数含义

配置DSS节点的信息。

参数说明

该参数的配置数量与EXEC模块连接DSS模块的个数相同。该参数是一个功能标签,需要配置它的子项。item参数的配置对应item元素,配置文件中的item元素以标签<item>开始,以标签</item>结束。

以下两种配置方式可任选其一:

参数值

无。

参数语法

<item></item>

参数示例

  • EXEC模块连接一个DSS模块,按方式一对item进行配置。

    <dss> <item> <name>dss_active</name> <ip>192.168.20.24</ip> <port>21234</port> <topic>topic_1</topic> </item> </dss>
  • EXEC模块连接一个DSS模块,按方式二对item进行配置。

    <dss> <item> <server>192.168.20.24:21234/dss_active</server> <topic>topic_1</topic> </item> </dss>
4.2.9.1.1 ip

参数含义

DMDSS的IP地址。

参数说明

当采用方式一对item进行配置时,该参数为必配参数。

参数值

IP地址。

参数语法

<ip></ip>

参数示例

<ip>192.168.20.21</ip>
4.2.9.1.2 map

参数含义

配置目标DMDRS装载或同步对象的黑/白名单和映射功能。

参数说明

配置该参数可以实现基于映射规则的数据分发。该参数是一个功能标签,需要配置它的子项item,如需配置多个对象黑/白名单,可配置多个<item></item>标签。具体配置同源DMDRS的3.1.9.7 map*参数。

注意

在数据分发场景,该参数配置的是DMDSS与目标DMDRS之间的对象映射关系。

参数值

参数语法

<map></map>

参数示例

<map> <item>RESOURCES.*==PERSON.*</item> </map>

####### 4.2.9.1.2.1 item

参数含义

目标DMDRS装载或同步对象的黑/白名单和映射配置项。

参数说明

配置该参数可以实现基于映射规则的数据分发。具体配置同源DMDRS的3.1.9.7.1 item*参数。

参数值

具体配置请参见源DMDRS的item参数值说明。默认值为*.*==*.*。

注意
  • 参数值左侧的模式名、对象名等应与源DMDRS的item参数值右侧的模式名、对象名等保持一致。
  • 当源数据库为容器数据库时,该参数值左侧需带上容器名。

参数语法

<item></item>

参数示例

  • 将源数据库RESOURCES模式的所有对象经DMDSS装载或同步到目标数据库的PERSON模式。

    1. 源DMDRS的item参数配置。

      <item>RESOURCES.*==RESOURCES.*</item>
    2. 目标DMDRS的item参数配置。

      <item>RESOURCES.*==PERSON.*</item>
  • 当源数据库为容器数据库时,将源数据库COMPANY容器中RESOURCES模式的所有对象经DMDSS装载或同步到目标数据库的PERSON模式。

    1. 源DMDRS的item参数配置。

      <item>COMPANY.RESOURCES.*==RESOURCES.*</item>
    2. 目标DMDRS的item参数配置。

      <item>COMPANY.RESOURCES.*==PERSON.*</item>
4.2.9.1.3 name

参数含义

EXEC模块连接的DSS模块名称。

参数说明

当采用方式一对item进行配置时,该参数为必配参数。

参数值

与DMDSS中配置的DSS模块名称一致。

参数语法

<name></name>

参数示例

<name>dss_dm8</name>
4.2.9.1.4 port

参数含义

DMDSS的管理端口号。

参数说明

当采用方式一对item进行配置时,该参数为必配参数。

参数值

与DMDSS配置的管理端口号一致。

参数语法

<port></port>

参数示例

<port>21234</port>
4.2.9.1.5 server

参数含义

DMDSS的IP地址、监听端口与DSS模块名称。

参数说明

可以配置server参数(方式二)或者同时配置4.2.9.1.3 name4.2.9.1.1 ip4.2.9.1.4 port参数(方式一),两种配置方法选择其中一种即可。当两种方式同时配置时,仅server参数生效。当采用方式二对item进行配置时,该参数为必配参数。

参数值

IP地址、端口与模块名的集合。配置格式为IP:Port/Name。

参数语法

<server></server>

参数示例

<server>127.0.0.1:17345/dss</server>
4.2.9.1.6 start_lsn

参数含义

读取DSS日志流的起始LSN。

参数说明

EXEC初次连接DSS时将默认从主题的起始位置开始读取日志流,如果希望从某一LSN开始读取日志流则需配置此参数。

参数值

取值范围:-1~9223372036854775807,默认值为0。参数值为-1时,表示从主题的末尾位置开始读取日志流。

参数语法

<start_lsn></start_lsn>

参数示例

<start_lsn>100000</start_lsn>
4.2.9.1.7 topic*

参数含义

在DMDSS上订阅的Topic名称。

参数说明

参数值

Topic名称。

参数语法

<topic></topic>

参数示例

<topic>cpt_dm8</topic>

4.2.10 enable_build_index

参数含义

创建索引后是否自动BUILD INDEX。

参数说明

该参数仅适用于Doris数据库。

该参数主要用于控制目标DMDRS创建索引后,是否自动执行BUILD INDEX操作。

参数值

  • 0:目标DMDRS创建索引后不执行BUILD INDEX。

  • 1:目标DMDRS创建索引后执行BUILD INDEX。

参数语法

<enable_build_index></enable_build_index>

参数示例

<enable_build_index>1</enable_build_index>

4.2.11 enable_error

参数含义

是否打印数据入库的报错信息。

参数说明

该参数主要用于group的子参数error_policy配置为2的情况,当error_policy配置为2时,默认忽略操作入库时的报错,如需打印报错信息,可将enable_error配置为1。

参数值

  • 0:不打印。默认值为0。

  • 1:打印。

参数语法

<enable_error></enable_error>

参数示例

<enable_error>0</enable_error>

4.2.12 error_log_mode

参数含义

保存错误日志的格式。

参数说明

指定EXEC模块保存错误日志的格式,支持保存为二进制文件或文本文件。保存为二进制文件时可使用DMDRS诊断工具对错误日志进行统计筛选,并根据错误日志详细数据诊断故障原因。

参数值

  • 0:保存错误日志为二进制文件。默认值为0。

  • 1:保存错误日志为文本文件。

参数语法

<error_log_mode></error_log_mode>

参数示例

<error_log_mode>0</error_log_mode>

4.2.13 filter

参数含义

配置目标DMDRS同步对象的黑名单功能。

参数说明

该参数是一个功能标签,需要配置它的子项item,如需配置多个对象黑名单,可配置多个<item></item>标签。

参数值

参数语法

<filter> <item></item> <item></item> </filter>

参数示例

<filter> <item>PERSON.ADDRESS</item> <item>RESOURCES.EMPLOYEE</item> </filter>
4.2.13.1 item*

参数含义

目标DMDRS同步对象的黑名单。

参数说明

目标DMDRS需要过滤同步操作的对象名。黑名单支持配置表、序列、视图、函数、存储过程、触发器、包、类、同义词和自定义类型对象。

参数值

库名A.模式名A.对象A,其中库名A为可选项。

说明

库名、模式名(用户名)和对象名支持通配符配置,包括*、A*、*A*、A*B和*B。容器名不支持通配符配置。

  • *:表示所有库、所有模式(用户)和所有对象。
  • A*:表示前缀为A的所有库、所有模式(用户)和所有对象。
  • *A*:表示含A的所有库、所有模式(用户)和所有对象。
  • A*B:表示前缀为A且后缀为B的所有库、所有模式(用户)和所有对象。
  • *B:表示后缀为B的所有库、所有模式(用户)和所有对象。

参数语法

<item></item>

参数示例

  • 将目标数据库RESOURCES模式下的表EMPLOYEE加入黑名单。

    <item>RESOURCES.EMPLOYEE</item>
  • 将目标数据库RESOURCES模式下的所有对象加入黑名单。

    <item>RESOURCES.*</item>

4.2.14 full_log

参数含义

目标DMDRS的装载、同步操作的完整日志功能配置。

参数说明

该功能用于预防或分析数据一致性问题。需要占用一定磁盘空间,且会轻微影响装载或同步性能。

日志文件路径为:模块名(一级目录)+ FULL_LOG站点号(二级目录)

该参数是一个功能标签,需要配置它的子项。

参数值

参数语法

<full_log></full_log>

参数示例

<full_log> <enable>1</enable> <file_limit>256</file_limit> <file_save>720</file_save> <space_limit>102400</space_limit> <compress>0</compress> </full_log>
4.2.14.1 compress

参数含义

日志文件的压缩选项。

参数说明

压缩每个达到单个文件大小上限(写满的)的日志文件,以节约空间。通常可以压缩至原有大小的10%~20%。

参数值

参数语法

<compress></compress>

参数示例

<compress>0</compress>
4.2.14.2 enable

参数含义

是否启用目标DMDRS的完整日志功能。

参数说明

开启该参数用于记录目标DMDRS的完整日志。

参数值

  • 0:禁用。

  • 1:启用。默认值为1。

参数语法

<enable></enable>

参数示例

<enable>1</enable>
4.2.14.3 file_limit

参数含义

单个日志文件的大小上限。

参数说明

控制单个日志文件的大小,自动切换下一个日志文件,避免单个日志文件过大。

参数值

取值范围:64~256,单位:MB。默认值为128MB。

参数语法

<file_limit></file_limit>

参数示例

<file_limit>64</file_limit>
4.2.14.4 file_save

参数含义

每个日志文件的保留时间。

参数说明

日志文件以时间戳命名,每隔一段时间,将结合当前时间进行判断,自动清理比较旧的日志文件。

参数值

取值范围:1~2147483647,单位:小时。默认值为720,即30天。

参数语法

<file_save></file_save>

参数示例

<file_save>720</file_save>
4.2.14.5 space_limit

参数含义

所有日志文件的总大小上限。

参数说明

控制日志文件占用的磁盘空间上限,达到上限后会自动清理最旧的日志文件。

参数值

取值范围:最小值为file_limit参数值的两倍,最大值为2147483647,单位:MB。默认值为4096MB。

参数语法

<space_limit></space_limit>

参数示例

<space_limit>102400</space_limit>

4.2.15 hint

参数含义

目标DMDRS DML语句中添加hint字符串,控制数据库的执行计划。

参数说明

如果设置的hint字符串非法或者无效,则hint不起作用。支持所有的数据库配置hint。

该参数不适用于Kafka目标数据库。

参数值

默认值为空。

参数语法

<hint></hint>

参数示例

目标数据库为DM7时,参数示例如下:

<hint>view_pull_up(0)</hint>

4.2.16 initrans

参数含义

目标Oracle建表语句的initrans参数值。

参数说明

该参数用于控制Oracle数据库在建表时的initrans参数值。

参数值

取值范围:0~255。

  • 0:表示由DMDRS自行设置建表语句中的initrans参数值。

  • 1~254:表示按配置值设置建表语句中的initrans参数值。

  • 255:表示建表语句将不设置initrans参数值。默认值为255。

参数语法

<initrans></initrans>

参数示例

<initrans>255</initrans>

4.2.17 log_limit

参数含义

单个日志类型日志文件占用存储空间上限。

参数说明

该参数针对log_mask的单个日志类型,如TRACE跟踪日志和FILTER过滤日志分别维护各自的总日志文件大小。

当单个日志类型的总日志文件大小超过该参数值时,删除最早的日志文件。

参数值

取值范围:100~2147483647,单位:MB。一般默认值为1024,如果log_mask带有EXEC和RECV类型掩码,则默认值为10*1024。

参数语法

<log_limit></log_limit>

参数示例

<log_limit>5000</log_limit>

4.2.18 log_mask

参数含义

目标DMDRS日志掩码。

参数说明

目标DMDRS日志掩码包括6种日志类型掩码和功能掩码。如果配置了日志类型掩码,目标DMDRS将记录该类型的日志。日志按照站点、类型维护。日志在“模块名/LOG+站点ID/类型”目录下,子目录为日志类型,如“./exec/LOG00001/TRACE”。

单个日志文件超过256MB或当前为新的日期时,切换到下一个日志文件。当单个日志类型的总日志文件大小超过log_limit配置大小时,删除最早的日志文件(具体见log_limit参数)。

参数值

以掩码自由组合的方式进行配置,不同掩码之间以|作为分隔符。默认值为TRACE|FILTER。6种日志类型掩码和功能掩码具体如下:

  • TRACE:仅针对带有trace标记的消息,如源DMDRS发送的消息或者目标DMDRS手动跟踪trace的表。

    • TRACE_MEM:跟踪消息的存储状态。如接收时创建、执行后释放、缓存检查点和执行时恢复加载等过程。

    • TRACE_PARSE:跟踪消息的操作解析、描述过程。

    • TRACE_MERGE:跟踪消息的操作合并。

    • TRACE_PREPARE:跟踪消息的执行计划生成、语句准备和列绑定过程。

    • TRACE_FILL:跟踪消息的行数据、LOB数据填充过程。

    • TRACE_EXEC:跟踪消息的执行、LOB数据投递过程。

    • TRACE_SQL:跟踪执行的SQL语句(带列值信息)。

  • RECV:接收相关的日志。

    • RECV_ALL:所有接收消息的日志(未过滤)。
  • FILTER:过滤相关的日志。

    • FILTER_BY_SITE:根据site接收的上一条消息last_xlsn/last_epoch过滤的操作。

    • FILTER_BY_SEL:查询建表根据上一条消息last xlsn/last sscn过滤的操作。

    • FILTER_BY_TRX:根据事务的last opid/last xlsn过滤的操作。

    • FILTER_BY_RECV:接收提交消息时,根据分组obj入库commit xlsn/commit sublsn过滤的事务。

    • FILTER_BY_LOAD:加载事务时,根据分组obj入库commit xlsn/commit sublsn过滤的事务。

    • FILTER_BY_EXEC:执行事务时,根据分组obj入库commit xlsn/commit sublsn过滤的事务。

    • FILTER_BY_TAB:执行操作前,根据装载表最大xlsn过滤的操作。

    • FILTER_BY_RID:执行操作前,根据装载ROWID范围分组xlsn过滤的操作。

    • FILTER_BY_LOB:根据LOB的last_xlsn/last opid/chunk过滤的分片。

  • CKPT:检查点相关的日志。

    • CKPT_FILE_REF:检查点文件引用计数加减。

    • CKPT_FILE_CLR:检查点文件清理。

  • EXEC:工作线程事务执行、并行控制相关的日志。

    • EXEC_TRX_EXEC:事务提交前日志(操作已经入库)。

    • EXEC_TRX_CMT:事务提交完成日志。

    • EXEC_TRX_REDO:事务重做日志。

    • EXEC_LOCK_OBJ:对象上锁/解锁/查找的日志。未开启ROW_HASH优化时的并行控制日志。

    • EXEC_LOCK_TID:TID上锁/解锁/查找的日志。开启ROW_HASH优化时的并行控制日志。

  • MERGE:同步错误处理策略error_policy为2时操作转换日志。

    • MERGE_ERROR:执行出错的SQL。

    • MERGE_OP:转换后执行的SQL。

  • 功能掩码

    • LOAD:需要记录装载站点的日志。

    • RECV_DISCARD:接收后消息后直接丢弃。

    • TRACE_ALWAYS:跟踪所有消息。

    • PRINT:日志输出至屏幕(不含TRACE类型日志,由PRINT_TRACE控制)。

    • PRINT_TRACE:TRACE日志输出至屏幕。

    • LLOG:DMDRS主备的日志信息。该掩码仅当开启DMDRS主备功能时生效。

说明
  • 可以直接使用TRACE、RECV、FILTER、CKPT、EXEC或MERGE掩码,包含该日志类型的所有掩码。如:TRACE|RECV。
  • ALL掩码表示TRACE、RECV、FILTER、CKPT、EXEC和MERGE 6种日志类型掩码的总和,不包含功能掩码。

参数语法

<log_mask></log_mask>

参数示例

<log_mask>EXEC_TRX_EXEC|EXEC_TRX_CMT|EXEC_LOCK_TID</log_mask>

4.2.19 partition_fallback

参数含义

目标DMDRS创建分区表失败时,是否尝试丢弃分区信息创建普通表。

参数说明

目标DMDRS选择分区表创建失败后的处理方式。

参数值

0:目标DMDRS创建分区表失败时不做任何处理。默认值为0。

1:目标DMDRS创建分区表失败时,丢弃分区信息尝试创建普通表。

参数语法

<partition_fallback></partition_fallback>

参数示例

<partition_fallback>1</partition_fallback>

4.2.20 pk_with_cluster

参数含义

目标DMDRS创建主键时,是否根据目标数据库上的pk_with_cluster参数添加cluster关键字。

参数说明

该参数主要用于目标数据库DM8。

参数值

  • 0:目标DMDRS根据源DMDRS发送的主键信息构建主键操作。默认值为0。

  • 1:目标DMDRS构建主键操作时,根据目标数据库DM8上的pk_with_cluster参数添加cluster属性。

参数语法

<pk_with_cluster></pk_with_cluster>

参数示例

<pk_with_cluster>1</pk_with_cluster>

4.2.21 replication_num

参数含义

建表操作的副本数。

参数说明

该参数仅适用于Doris数据库。

该参数主要用于控制目标DMDRS建表时指定的副本数量,配置的参数值即为建表时的副本数。

参数值

取值范围:1~255,默认值为1。

参数语法

<replication_num></replication_num>

参数示例

<replication_num>1</replication_num>

4.2.22 seq_sync_mode

参数含义

序列值同步的方式。

参数说明

目标DMDRS选择序列值同步的方式。

配置为0时,目标DMDRS收到序列值同步操作不会马上应用到数据库,而是临时保存到本地文件,再根据需要执行解析本地序列临时文件并执行入库命令应用到数据库中。

配置为1时,目标DMDRS收到序列值同步操作会马上应用到数据库。

说明

在双向同步场景下,当该参数配置为1时,必须配置当前DMDRS服务的CPT模块的filter_seq_userid参数。

参数值

  • 0:临时保存序列同步操作。默认值为0。

  • 1:立即执行序列同步操作。

参数语法

<seq_sync_mode></seq_sync_mode>

参数示例

<seq_sync_mode>0</seq_sync_mode>

4.2.23 seq_sync_print

参数含义

是否打印序列值同步日志。

参数说明

目标DMDRS控制序列值同步日志是否打印。

参数值

  • 0:不打印。

  • 1:打印。默认为1。

参数语法

<seq_sync_print></seq_sync_print>

参数示例

<seq_sync_print>0</seq_sync_print>

4.2.24 set_def_schema

参数含义

目标数据库openGauss创建辅助表是否指定模式。

参数说明

该参数用于控制目标数据库为openGauss时,在创建辅助表时是否需要指定模式信息。

参数值

  • 0:不指定,辅助表创建在默认的public模式下。默认值为0。

  • 1:指定,辅助表创建在连接用户的同名模式下。

    说明

    当设置成1时,需保证目标数据库已存在连接用户同名模式,若没有则需创建该模式。

参数语法

<set_def_schema></set_def_schema>

参数示例

<set_def_schema>1</set_def_schema>

4.2.25 toggle_case

参数含义

数据同步对象名称大小写转换。

参数说明

EXEC模块在进行同步执行时,是否需要对同步对象名称进行大小写转换。

参数值

  • 0:保持大小写不变。默认值为0。

  • 1:转换为小写。

  • 2:转换为大写。

参数语法

<toggle_case></toggle_case>

参数示例

<toggle_case>1</toggle_case>

4.2.26 topology

参数含义

EXEC模块的拓扑状态。

参数说明

根据当前节点的实际组网配置拓扑状态,当节点所属环链路,需配置为RING;当节点所属普通链路,需配置为NORMAL。当拓扑状态为RING时,目标端将开启事务过滤功能,过滤掉在当前节点已执行过的事务。当状态为NORMAL时,目标端不开启事务过滤功能,执行端合并执行所有事务。

参数值

参数值不区分大小写。

  • RING:环链路拓扑。默认值为RING。

  • NORMAL:普通链路拓扑。

参数语法

<topology></topology>

参数示例

标识该节点处于一个环链路中。

<topology>ring</topology>

4.2.27 update_commit_row

参数含义

触发提交的更新行数阈值。

参数说明

该参数的原名为upd_commit_rows。

该参数主要用于目标数据库DM8的装载,适用于出现并行更新表的大对象列报死锁的情况。装载默认一个分组提交一次,配置该参数后可以让目标DMDRS更新了配置的行数后立即提交。

参数值

取值范围:0~65534,默认值为0。

参数语法

<update_commit_row></update_commit_row>

参数示例

<update_commit_row>1</update_commit_row>
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服