dm_svc.conf 是达梦数据库的客户端核心配置文件,其原理是通过集中管理连接参数与服务路由规则,实现客户端与数据库集群的高效通信。以下是具体说明:
dm_svc.conf 是达梦数据库客户端层面的配置文件,由安装程序自动生成,默认路径因操作系统而异:
初始 dm_svc.conf 文件在 DM 安装时自动生成。不同平台的生成目录有所不同。
可以通过设置操作系统环境变量 DM_SVC_PATH 来修改 dm_svc.conf 文件路径。
该文件必须与客户端工具(如 Disql、JDBC 驱动)或中间件(如 Tomcat)部署在同一台机器上,否则无法生效。若需自定义路径,需在连接串中显式指定,例如:
jdbc:dm://DM?dmsvcconf=/home/dmdba/dm_svc.conf
TIME_ZONE=(+480)),适用于所有服务。[DMDSC1])为标识,覆盖全局参数,实现差异化配置。SWITCH_INTERVAL(如 1000 毫秒)的间隔重试连接,最多尝试 SWITCH_TIMES(如 60 次)。若仍失败,根据 LOGIN_MODE 决定后续行为(如切换至备库或报错)。EP_SELECTOR 参数(如轮询、随机)选择节点,分散连接压力。AUTO_RECONNECT=1,已建立的连接在主库恢复后不会自动切换;若为 2,则切换至优先节点。高可用支持
在主备集群或 DSC(数据守护集群)中,确保客户端无感切换至可用节点。例如:
ini[DMDSC1]
LOGIN_MODE=4 # 主备模式需设为 0
SWITCH_TIMES=60
AUTO_RECONNECT=2
当主库故障时,客户端自动连接备库,并在主库恢复后切换回优先节点。
读写分离
DW_SEPARATE=1 和 DW_PERCENT=0 将读操作定向至备库,主库专注写操作,提升并发性能。多环境管理
安全与优化
WALLET_LOCATION 指定凭据文件路径,避免在连接串中暴露密码。COMPRESS_MSG 减少网络传输量,提升性能。dm_svc.conf 配置文件的内容分为全局配置区和服务配置区。全局配置区在前;服务配置区在后,以“[服务名]”开头。其中,服务名配置项可以在全局配置区,也可以在此服务名对应的服务配置区之前,即在其对应的“[服务名]”之前。
dm_svc.conf 格式如下:
# 全局配置区
参数配置……
# 服务配置区
[服务名1]
参数配置……
# 服务配置区
[服务名2]
参数配置……
配置示例:
ini# 全局配置
TIME_ZONE=(+480) # 时区设置为东八区
# 服务配置
[DMDSC1]
DMDSC1=(192.168.1.1:5236,192.168.1.3:5236) # 服务节点列表
LOGIN_MODE=4 # 连接模式
SWITCH_TIMES=60 # 最大重试次数
SWITCH_INTERVAL=1000 # 重试间隔(毫秒)
EP_SELECTOR=1 # 轮询选择节点
AUTO_RECONNECT=2 # 主库恢复后自动切换
[DMDSC2]
CLUSTER=DSC # 集群类型
DW_SEPARATE=1 # 启用读写分离
DW_PERCENT=0 # 全部读操作定向至备库
文章
阅读量
获赞
