达梦读写分离部署
1、简介目标高并发的事务性系统中读多写少将读事务转移到备机执行减少单节点的并发压力系统事务特征纯读操作的事务全部在备机执行纯写操作的事务全部在主机执行既有读又有写的事务从写事务开始全部再主机执行。读写分离集群和主备集群的主要区别适用场景不同读写分离聚焦负载均衡主备聚焦容灾备份归档方式不同读写分离是Timely, 主备是Realtime应用访问连接串不同读写分离jdbc:dm://DM_RWC?rwSeparate1rwPercent25; 数据守护jdbc:dm://DM_DW2、配置方式前提搭建好主备集群基于主备集群修改归档方式dmarch.ini配置文件需要重启数据库才生效将ARCH_TYPE 由REALTIME(实时主备) 改为 TIMELY(读写分离)配置文件dm_svc.conf它包含了达梦各接口和客户端工具所需要配置的一些参数。通过它可以实现达梦各种集群的读写分离和均衡负载且必须和接口/客户端工具位于同一台机器上才能生效。因此在安装监视器的服务器下配置该文件。一般安装DM数据库时会生成linux 服务器上该文件存在目录/etc下面。如果/etc下没有则手动创建一个。dm_svc.conf 配置文件的内容分为全局配置区和服务配置区。全局配置区在前可配置所有的配置项服务配置区在后以“[服务名]”开头可配置除了服务名外的所有配置项。服务配置区中的配置优先级高于全局配置区服务配置区的相同配置项会覆盖全局配置区对应的配置项。其中服务名的作用时可以再url串中替代IP地址 连接整个集群可以根据需要设置成别的名字。# dm_svc.conf 配置示例TIME_ZONE(480)LANGUAGE(en)# 首先定义服务名dmdw1(172.20.10.2:5236,172.20.10.4:5236)[dmdw1]# 然后配置参数LOGIN_MODE(1)RW_SEPARATE(1)RW_PERCENT(0)SWITCH_TIME(60)SWITCH_INTERVAL(1000)参数说明TIME_ZONE和LANGUAGE分别对应操作系统时区和语言LOGIN_MODE:0-优先连接PRIMARY模式的库 Normal模式次之最后选择STANDBY模式1-只连接主库2-只连接备库3-优先连接STANDBY模式的库PRIMARY模式次之最后选择NORMAL4-有限连接NORMAL模式的库PRIMARY模式次之最后选择STANDBY模式。dmdw1(IP1:5235,IP2:5235)标识一个服务名为dmdw1把主机和备机都集成到一个服务名字dmdw1可以在disql登录时使用服务名替换url串中的IP地址从而连接整个集群RW_SEPARATE1表示开启读写分离0-表示不启用 2-启用备库由客户端进行选择。RW_PERCENT1000~100表示将只读任务分发给备库的比例可以根据主备库的实际压力来设定。SWITCH_TIMES: 表示以服务名连接数据库时若未找到符合条件的库成功建立连接将尝试遍历服务名中库列表的次数。SWITCH_INTERVAL表示在服务器之间切换的时间间隔单位为毫秒有效值范围 1~9223372036854775807。达梦社区达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台