发布时间:2018-01-20 23:27:59编辑:丝画阁阅读(790)
1. mycat实现mysql的读写分离
1.1. mycat简介
mycat是最近很火的一款国人发明的分布式数据库中间件,它是基于阿里的cobar的基础上进行开发的mycat在应用当中的作用可以看下图
mycat可以让程序员只需要关心业务代码的编写,而不用担心后端数据库集群的负载均衡,读写分离,分库分表的数据分片逻辑的编写,只要直接连接mycat就可以了
1.2. 安装mycat
首先我们准备一台干净的centos机器,安装好jdk
解压mycat的安装包到/usr/local/下
设置mycat的环境变量
1. vi /etc/profile
export MYCAT_HOME=/usr/local/mycatexport PATH=$MYCAT_HOME/bin:$PATH
使配置文件立即生效
1. source /etc/profile
1.3. 配置mycat
进入mycat的配置文件目录
1. cd /usr/local/mycat/conf/
1. vi schema.xml
这个配置文件项目比较多,可以参考mycat官网具体查看。
接下来配置用户权限,系统变量
vi server.xml
用户qy73user,对应的MyCat逻辑库连接到的数据节点对应的主机为主从复制集群,并通过MyCat实现了读写分离
1.4. 启动mycat
运行启动命令
mycat start
第一次启动会遇见下面的问题。
问题一:
解决方法:
这个是由于/etc/hosts中没有配置主机名server005 和ip 192.168.153.164的映射
问题二:
解决方法:
此问题是mycat配置文件server.xml中的默认配置没有删除导致。
再次运行启动命令:mycat start
1.5. 测试mycat
1) 可以使用mysql客户端连接或者navicat来连接mycat
2) 在mysql主机上的qy73库中创建表tbl_role
3) 可以使用已经在navicat中创建的mycat连接查看是否存在tbl_role表
1.6. 测试mysql读写分离
1) 进入mycat的日志目录注意修改log4j的配置文件info为debug
2) 进入到logs目录,开始实时监控mycat.log
cd /usr/local/mycat/logs/
3) 先测试一下读操作
我们连接到mycat发送一句select * from tbl_user命令试试
可以看到select 操作被路由到了192.168.153.161也就是我们的slave节点
那么我们执行多次看看
结果还是被路由到了读节点
4) 接下来我们测试一下写操作
可见插入被路由到了master节点
最后我们看看master的数据是否被同步到slave
记录成功的同步过来了,可见读写分离搭建成功。
感兴趣的朋友可以点击头像关注我,每天都有更新,大家一起进步!
关键字:
下一篇:mysql权限和索引
本站部分内容来源网络及网友上传,本站未必能一一鉴别其是否为公共版权或其版权归属,如果您认为侵犯您的权利,本站将表示非常抱歉!
请您速联系本站,本站一经核实,立即删除。删文删帖联系【2789291421@qq.com】