(二)mycat搭建主从复制,实现读写分离

环境准备

准备三台linux服务器,mycat、mycatmaster、mycatslave,分别安装好mycat服务、mysql服务、mysql服务

mycatmaster和mycatslave基于binlog实现主从复制,见主从复制搭建

mycat配置

mycat权威指南中配置读写分离是这样的:

(二)mycat搭建主从复制,实现读写分离_第1张图片

以上两种取模第一种当写挂了读不可用,第二种可以继续使用,事务内部的一切操作都会走写节点,所以读 操作不要加事务。

下面我就按第一种来配置,修改mycat配置文件schema.xml文件,修改写节点和读节点信息:

cd /usr/local/mycat/conf

vi schema.xml

(二)mycat搭建主从复制,实现读写分离_第2张图片

然后启动mycat

启动之后我们用mysql客户端或者mysql服务连接mycat:

(二)mycat搭建主从复制,实现读写分离_第3张图片

注意要在两个读写分离的库中先创建好schema.xml配置的数据库,这里为db1、db2、db3

 

连接好之后可以看到mycat中的数据库和表,都是mycat配置中虚拟的:

(二)mycat搭建主从复制,实现读写分离_第4张图片

然后再mycat中创建一张表:

(二)mycat搭建主从复制,实现读写分离_第5张图片

插入数据

(二)mycat搭建主从复制,实现读写分离_第6张图片

即可完成mycat的主从复制配置。

画个图总结一下:
 

(二)mycat搭建主从复制,实现读写分离_第7张图片

没有使用mycat实现读写分离时,需要程序来区分好读写库,在程序中定义读的datasource和写的datasource;

使用mycat后,web程序只需要连接mycat,不需要区分读写操作,mycat会自动定位到读库和写库

你可能感兴趣的:(后台技术)