达梦数据库读写分离集群原理

概述

本文就达梦数据库读写分离原理进行介绍。

达梦读写分离集群特点:

  1. 可以配置8个即时备库或8个实时备库;
  2. 读写操作自动分离、负载均衡;
  3. 提供数据同步;
  4. 备库故障自动处理,故障恢复自动数据同步等功能,也支持自动故障切换和手动故障切换两种守护模式。

读写分离集群不依赖额外的中间件,而是通过数据库接口与数据库之间的密切配合,实现读、写操作自动分离特性。DM 的 JDBC、DPI、DCI、ODBC、Provider 等接口都可以用来部署读写分离集群。

1.读写分离集群搭建请参考

读写分离集群搭建和主备守护集群搭建步骤一致,请参考下面链接:

DM8守护集群(主备)安装部署_weixin_42942173的博客-CSDN博客

2.主备守护和读写分离集群配置文件区别

主备守护集群和读写分离集群搭建步骤一致,主要是区别在dm_svc.conf 配置文件。

dm_svc.conf 是使用达梦数据库时非常重要的配置文件,它包含了达梦各接口和客户端工具所需要配置的一些参数。

2.1主备守护集群配置

配置示例

##以#开头的行表示是注释#
##全局配置区
TIME_ZONE=(480)
LANGUAGE=(cn)
DMHA=(192.168.100.100:5236,192.168.100.101:5236)
##服务配置
[DMHA]
SWITCH_TIMES=(3)
SWITCH_INTERVAL=(100)
LOGIN_MODE=(1)

jdbc连接串

jdbc:dm://DMHA

2.2读写分离集群配置

配置示例

##以#开头的行表示是注释
##全局配置区
TIME_ZONE=(480)
LANGUAGE=(cn)
DMRW=(192.168.100.100:5236,192.168.100.101:5236,192.168.100.102:5236)
##服务配置
[DMRW]
LOGIN_MODE=(1)
RW_SEPARATE=(1)
RW_PERCENT=(30)
SWITCH_TIMES=(60)
SWITCH_INTERVAL=(1000) 

RW_SEPARATE
表示是否启用读写分离。0:不启用;1:启用;2:启用,备库由客户端进行选择,且只会选择服务名中配置的节点。
RW_PERCENT
表示读写分离分发比例,有效值范围 0~100,主库占所有事物数的比例。可以根据主备库的实际压力来设定。

jdbc连接串

jdbc:dm://DMRW

3.读写分离集群原理

3.1读写分离集群数据库连接创建流程

1. 用户发起数据库连接请求。

2. 接口(JDBC、DPI 等)根据服务名配置(在 dm_svc.conf 中进行配置)登录主库。

3. 主库挑选一个有效即时备库或实时备库的 IP/Port 返回给接口。

4. 接口根据返回的备库 IP 和 Port 信息,向备库发起一个连接请求。

5. 备库返回连接成功信息。

6. 接口响应用户数据库连接创建成功。

                                                     3.1读写分离连接创建图

3.2 读写分离集群语句分发流程

1. 接口收到用户的请求。

2. 接口优先将SQL发送到备库执行。

3. 备库执行并返回执行结果。如果接口收到的是备库执行成功消息,则转到第 6 步,

如果接口收到的是备库执行失败消息,则转到第4步。

4. 重新将执行失败的SQL发送到主库执行。只要第3步中的SQL在备库执行失败,

则同一个事务后续的所有操作(包括只读操作)都会直接发送到主库执行。

5. 主库执行并返回执行结果给接口。一旦主库上执行的写事务提交,则下次继续从第

1 步开始执行。

6. 接口响应用户并将执行结果返回给用户。

                                                         

总结

本文介绍了达梦数据库读写分离集群特点,然后介绍了主备守护集群和读写分离集群配置文件区别,最后介绍了读写分析分离集群原理。

关于达梦数据库更多学习内容,欢迎访问达梦社区:
[https://eco.dameng.com](https://eco.dameng.com)

达梦数据库配置读写分离的准备工作包括以下步骤: 1. 首先,需要进行数据库的快速安装。可以将数据库安装路径设置为/data/soft/database/dmdba。 2. 接下来,需要初始化数据库实例。可以使用以下命令进行初始化: ``` su - dmdba cd /data/soft/database/dmdba/bin 初始化命令 ``` 具体的初始化命令需要根据数据库版本和具体需求进行设置。 3. 然后,需要准备读写分离的配置。可以使用达梦数据库提供的脱机备份工具dmrman来备份主库DM160。具体的步骤如下: ``` su - dmdba cd /data/soft/database/dmdba/bin 使用dmrman备份主库DM160的命令 ``` 备份命令需要根据具体的数据库配置和要备份的主库进行设置。 完成以上准备工作后,数据库就可以进行读写分离的配置了。具体的配置过程需要根据数据库版本和具体需求进行设置,可以参考数据库的官方文档或咨询达梦数据库的技术支持团队。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [猿创征文|达梦数据库如何实现读写分离?](https://blog.csdn.net/m0_59492087/article/details/127246085)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值