java-zh 2022-07-18 16:47 采纳率: 80%
浏览 18

mycat2读写分离select是否随机获取库?

mycat2读写分离select是否随机获取库问题
目前模式是一主多从
A主库 B、C从库
A是可读可写模式
BC是只读模式
当我在mycat执行select的时候,mycat是从哪个库里面取数据呢?是随机在三个库上取吗?

img

  • 写回答

1条回答 默认 最新

  • CodeDevMaster 优质创作者: Java技术领域 2022-07-24 13:38
    关注

    1.你可以修改MySQL的配置文件:my.cnf,设置logbin格式binlog_format=STATEMENT,重启MySQL,向数据表插入系统变量值:INSERT INTO tb VALUES(1,@@hostname);,以此造成主从数据不一致,就可以验证读写分离


    2.负载均衡策略readBalanceType值默认是:BALANCE_ALL,即获取集群中所有数据源进行读,所以不出意外,你这里应该是随机在三个库上读取。


    3.readBalanceType负载均衡策略支持如下:

    BALANCE_ALL(默认值):获取集群中所有数据源
    
    BALANCE_ALL_READ:获取集群中允许读的数据源
    
    BALANCE_READ_WRITE:获取集群中允许读写的数据源,但允许读的数据源优先
    
    BALANCE_NONE:获取集群中允许写数据源,即主节点中选择
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月18日