PXC +mycat的读写分离

环境是PXC的3节点,虽然PXC的3个节点都是可读写,避免主键的争用,还是做成了1写2读的读写分离,读写分离的中间件选用了mycat来做,因为mycat 可以很好地做 写节点切换。

PXC的集群已经搭建好了。3个节点
js-ypt-percona1-t 192.168.50.130
js-ypt-percona2-t 192.168.50.131
js-ypt-percona3-t 192.168.50.132

mycat 的机子IP为 192.168.50.10
mycat 选用的版本是Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz

下载安装包,并解压到 /usr/local/mycat

mycat 的读写分离配置,只用到2个配置文件,conf 里面的 schema.xml 和 server.xml。

schema.xml 配置



上面3行都不需要改变

下面的配置主要分3个配置项,schema , datanode,datahost
    
      

--name 逻辑数据库名,与server.xml中的schema对应
--sqlMaxLimit 限制返回行数,语句有带limit以语句的为准,否则以这个参数为准
--dataNode 读写分离没有这个参数就改成这个参数,对应下一个dataNode选项配置,可以随意命名

    

--name 对应上面的schema
--dataHost 可以随意命名
--database PXC中真实的库名

         
            select user()
            
              
              
            

            
              
              
            

--name 对应dataNode 配置选项的 dataHost
-- maxCon 最大连接1000,minCon最小连接,balance=2 负载均衡是select 随机往写和读节点分布
--writeType =0 所有写操作发送到配置的第一个 writeHost,第一个挂了切到还生存的第二个 writeHost
--switchType=1 自动切换writeHost , 上面的配置中 我定义了2个 writeHost

            
         
 

server.xml 配置


123456
percona
percona

-- 配置很简单 用户 admin,密码 123456,库是 percona

启动mycat

/usr/local/mycat/bin/startup_nowrap.sh ##启动mycat

有可能会碰到一个奇怪的问题。
vim startup_nowrap.sh

set ff 可能查看到的是 windows, 执行 set ff=unix 即可,然后重新运行脚本

用客户端 连接 mycat
192.168.50.10:8806 admin/123456
连接成功!
done!

你可能感兴趣的:(PXC +mycat的读写分离)