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

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

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

2.2 功能参数

介绍Manager模块的功能参数。

2.2.1 bind_port_max

参数含义

DMDRS网络通信时固定客户端端口的最大值。

参数说明

该参数必须与bind_port_min参数结合使用。

如果配置bind_port_min为6500,bind_port_max为6600,则固定客户端端口的范围为:[6500,6600],表示固定端口共有101个。

注意

配置bind_port_min和bind_port_max范围时,需要将mgr_port排除在范围外。

参数值

取值范围:1000~65535。无默认值,不配置时表示不固定客户端的端口。

参数语法

<bind_port_max></bind_port_max>

参数示例

<bind_port_max>6600</bind_port_max>

2.2.2 bind_port_min

参数含义

DMDRS网络通信时固定客户端端口的最小值。

参数说明

DMDRS网络通信时没有固定客户端的连接端口,客户端的连接端口默认由操作系统自动分配。如果需要固定客户端的端口,则需要配置bind_port_min和bind_port_max参数,用于固定端口的范围。该参数必须与bind_port_max参数结合使用。

参数值

取值范围:1000~65535。无默认值,不配置时表示不固定客户端的端口。

参数语法

<bind_port_min></bind_port_min>

参数示例

<bind_port_min>6500</bind_port_min>

2.2.3 core_dump_flag

参数含义

DMDRS在异常情况下生成核心转储文件的方式。

参数说明

仅支持Linux平台。

参数值

  • 0:不生成核心转储文件。

  • 1:生成精简版核心转储文件。默认值为1。

  • 2:生成完整核心转储文件。

  • 3:生成包含共享内存的核心转储文件。

参数语法

<core_dump_flag></core_dump_flag>

参数示例

<core_dump_flag>1</core_dump_flag>

2.2.4 enable_arbiter

参数含义

是否启用主备决策DMDRS服务。

参数说明

该参数的原名为is_arbiter。

当目标数据库为Kafka,使用目标DMDRS主备服务时需要配置该参数。主备决策DMDRS服务可以持久化目标DMDRS主备节点信息,处理目标DMDRS主备存取主备节点信息的请求。

参数值

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

  • 1:启用。

参数语法

<enable_arbiter></enable_arbiter>

参数示例

<enable_arbiter>1</enable_arbiter>

2.2.5 enable_pwd_encipher

参数含义

是否启用数据库登录密码的加密功能。

参数说明

该参数的原名为pwd_encipher。

  • 禁用数据库登录密码的加密功能后,数据库的登录密码需配置为明文密码。

  • 如需使用DES算法对密码进行加密,启用数据库登录密码的加密功能后,需通过./drcsl -encrypt_old "<pwd>"命令或者./drcsl登录后再输入encrypt_old "<pwd>"命令的方式获取密文密码,将数据库的登录密码配置为该密文密码。

  • 如需使用AES256算法对密码进行加密,启用数据库登录密码的加密功能后,需通过./drcsl -encrypt "<pwd>"命令或者./drcsl登录后再输入encrypt "<pwd>"命令的方式获取密文密码,将数据库的登录密码配置为该密文密码。

    注意

    在部分Linux平台中,./drcsl -encrypt "<pwd>"命令实际是通过shell方式执行的。当pwd中含有$等特殊字符时,如:"Aa$#@"等,可能会被部分平台解析为变量符号而导致密码串丢失。因此当密码中含有$等特殊字符时,可采用以下3种方式获取密文密码。

    • 先输入./drcsl命令登录,再输入encrypt "Aa$#@"命令。
    • 在$符号前加转义字符“\”,输入./drcsl -encrypt "Aa\$#@"命令。
    • 将双引号改为单引号,输入./drcsl -encrypt 'Aa$#@'命令。

参数值

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

  • 1:启用,使用DES算法。

  • 2:启用,使用AES256算法。

参数语法

<enable_pwd_encipher></enable_pwd_encipher>

参数示例

<enable_pwd_encipher>2</enable_pwd_encipher>

2.2.6 enable_tls

参数含义

是否支持TLS 1.2及以上协议。

参数说明

在DMDRS同步链路中,所有的DMDRS服务(包括源DMDRS、目标DMDRS和DMDSS)都需要配置该参数。配置该参数后,DMDRS服务之间将会启用基于TLS 1.2协议的证书认证及通信功能。

DMDRS使用该功能需要具备如下运行条件:

  • 需要加载OpenSSL的认证证书:作为客户端,需要证书drs_ca.crt;作为服务端,需要证书drs_server.crt和秘钥drs_server.key。可以使用的证书和秘钥包括自签名认证证书和正式证书两种。

    • 当TLS协议为国际版本时,使用OpenSSL生成的自签名认证证书,证书生成时,需要填写名称及接收端服务器IP。生成指令如下:

      openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout drs_ca.key -out drs_ca.crt -days 3650

      openssl req -newkey rsa:2048 -nodes -keyout drs_server.key -out drs_server.csr

      openssl x509 -req -in drs_server.csr -CA drs_ca.crt -CAkey drs_ca.key -CAcreateserial -out drs_server.crt -days 365

    • 当TLS协议为国密版本时,使用OpenSSL(基于tongsuo版本)生成的自签名认证证书。将以下内容拷贝到gen_ca.sh脚本中执行即可。脚本内容如下:

      #!/bin/bash
      # 生成国密SM2自签名证书的脚本
      # 使用 TongSuo (铜锁) 生成 SM2 证书
      
      CERT_DIR="./sm2_certs"
      CA_KEY="drs_ca.key"
      CA_CERT="drs_ca.crt"
      SERVER_KEY="drs_server.key"
      SERVER_CERT="drs_server.crt"
      
      OPENSSL=/usr/local/tongsuo/bin/openssl
      
      mkdir -p $CERT_DIR
      cd $CERT_DIR
      
      # 1. 生成CA私钥 (SM2算法) - 注意曲线名称是大写 SM2
      echo "生成CA私钥..."
      $OPENSSL genpkey -algorithm EC -pkeyopt ec_paramgen_curve:SM2 -out $CA_KEY
      
      # 2. 生成CA自签名证书
      echo "生成CA证书..."
      $OPENSSL req -new -x509 -key $CA_KEY -out $CA_CERT -days 3650 \
        -subj "/C=CN/ST=Beijing/O=MyOrg/CN=MyCA"
      
      # 3. 生成服务器私钥 (SM2算法)
      echo "生成服务器私钥..."
      $OPENSSL genpkey -algorithm EC -pkeyopt ec_paramgen_curve:SM2 -out $SERVER_KEY
      
      # 4. 生成服务器自签名证书
      echo "生成服务器证书..."
      $OPENSSL req -new -key $SERVER_KEY -out temp.csr -subj "/C=CN/ST=Beijing/O=MyOrg/CN=localhost"
      $OPENSSL x509 -req -in temp.csr -signkey $SERVER_KEY -out $SERVER_CERT -days 365
      
      rm -f temp.csr
      
      #openssl3.x对自签名证书不再信任,需要使用服务端证书
      mv drs_ca.crt drs_ca_old.crt
      cp drs_server.crt drs_ca.crt
      
      echo "证书生成完成!"
      ls -la *.key *.crt
      
      echo ""
      echo "=== 验证CA证书 ==="
      $OPENSSL x509 -in $CA_CERT -text -noout | head -20
      
      echo ""
      echo "=== 验证服务器证书 ==="
      $OPENSSL x509 -in $SERVER_CERT -text -noout | head -20
      
      
    • 使用正式的证书,需要修改对应的名称为drs_ca.crt、drs_server.crt和drs_server.key。

  • 证书的存放路径:作为服务端时,在DMDRS运行目录下"server_tls/drs_server.crt"和"server_tls/drs_server.key";作为客户端时,在DMDRS运行目录下"client_tls/[待连接服务IP]/drs_ca.crt"(也可依据程序提示添加证书或者key到上述目录即可),且作为客户端时,可以支持多个服务IP的证书,以IP名称目录区分。

  • 当TLS协议为国际版本时,需要加载OpenSSL的动态依赖库:Windows下为ssleay32.dll和libeay32.dll;Linux下为libssl.so。要求OpenSSL动态依赖库版本为1.0.2k及以上版本时,才能支持TLS 1.2协议。

  • 当TLS协议为国密版本时,需要加载OpenSSL(基于tongsuo版本)的动态依赖库:Linux下为libssl.so、libcrypto.so。必须将动态依赖库复制到DMDRS程序运行目录,防止错误链接到其他系统版本库,协议会自动协商版本,默认为TLS 1.3协议。

参数值

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

  • 1:启用,使用国际算法及证书。

  • 2:启用,使用国密算法及证书。

参数语法

<enable_tls></enable_tls>

参数示例

<enable_tls>1</enable_tls>

2.2.7 lang

参数含义

日志语言。

参数说明

服务器、控制台及日志文件的输出语言和字符集,该参数配置需与窗口字符集配置保持一致。

参数值

  • ch:GB18030编码简体中文。默认值为ch。

  • ch-utf8:UTF-8编码简体中文。

  • en:英文。

  • ch-hk:GB18030编码香港繁体中文。

参数语法

<lang></lang>

参数示例

<lang>ch</lang>

2.2.8 net_type

参数含义

服务程序运行环境的网络协议版本。

参数说明

参数值

参数值不区分大小写。

  • ipv4:当前环境网络协议版本为IPv4。默认值为ipv4。

  • ipv6:当前环境网络协议版本为IPv6。

参数语法

<net_type></net_type>

参数示例

<net_type>ipv6</net_type>
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服