关系数据库MySQL版

读写分离

2024-06-17 08:21:49

DRDS使用以下两种方式开启读写分离功能。

balance属性配置

进入DRDS管理控制台,分组管理--默认分组--关联RDS设置--属性设置。读写分离配置参数有“关闭”,“读语句发往读库”,“读语句随机发往读库和写库”选项:

          关闭”:表示不开启读写分离,所有语句发往写节点。

          读语句发往读库”:表示开启读写分离,所有事务外(autocommit=1)的select语句发往读节点;所有事务内(autocommit=0) 的语句发往写节点。

          读语句随机发往读库和写库”:表示开启读写分离,所有事务外(autocommit=1)的select语句随机发往读节点或写节点;所有事务内 (autocommit=0)的语句发往写节点。

HINT语句

使用 /* !HINT({"balance":"?"})*/ 注解可以强制指定 select 语句按照指定规则进行读写分离,balance有三种取值方式,与DRDS的balance属性类似:

          /* !HINT({"balance":"0"})*/ 强制 select 语句发往写节点 。

          /* !HINT({"balance":"1"})*/ 强制 select 语句发往读节点 。

          /* !HINT({"balance":"2"})*/ 强制 select 语句随机发往数据库读节点或写节点。


JF7poDW2uMiu