简单的实现读写分离和分片的方式-----mycat

mycat实现读写分离和分片

配置mycat

安装mycat的前提是你本地已经安装好了mysql。

下载mycat地址:
https://github.com/MyCATApache/Mycat-download/tree/master/1.4-RELEASE
选择win版本。

解压后配置环境变量:
如图:

MYCAT_HOME配置:
在这里插入图片描述
PATH配置:
PATH配置

修改配置文件(mycat–>conf):
wrapper.conf:
在这里插入图片描述

这里改成你本地安装jdk的路径。

server.xml:
这里写图片描述

这里的test就是登陆mycat的用户和密码

schema.xml:
这里写图片描述

schema的配置要与你本地安装的mysql有关:
“2”是你本地mysql的分库名称,
“3”是你本地mysql的账号密码,
“1”是mycat和本地mysql表关联配置,table是表名,dataNode就是哪些分库里有test表。我三个分库都有test这张表,所以都配置了。rule是test这张表的执行规则,规则名字是:auto-sharding-long,规则设置在rule.xml里,我们可以去看看:

这里写图片描述

搜索标注的:
这里写图片描述

在mycat–>conf通过规则文件名找到规则文件:
这里写图片描述

其中K代表数字1000,M代表数字10000,文本上显示的内容含义为:id数为0-50010000的范围内,数据会分配到第0个分片上,id数为50010000-1000*10000的范围内,数据会分配到第1个分片上,依次类推。

为了测试我们可以改成如下:

这里写图片描述

同时插入6条数据,结果应该是第一和第二条数据在第一个分库里,第三和第四条在第二个分库里,最后两条在第三个分库里。

以下是我本地mysql:
这里写图片描述
如图:我有三个分库,且每个分库下都有一张test的表。

按照以上配置后,mycat应该就可以跑起来了。

运行截图文件:
这里写图片描述

这里写图片描述

启动成功!

然后在Navicat登陆mycat:
这里写图片描述

这里写图片描述

测试数据:

这里写图片描述

结果如下图:
database_test:
这里写图片描述

database_test2:
这里写图片描述

database_test3:
这里写图片描述

测试成功!

通过Mycat+Mysql可以实现oracle的读写分离,个人感觉在某些方面mycat+mysql的方式比oracle的分区表性能更好。

转载:https://blog.csdn.net/qq_25430563/article/details/106155755

然后你只需要像使用单机版mysql一样,去使用,mycat会自动将写操作放到writehost上,然后同步到readhost。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值