mycat 读写分离

Posted 一直爱流浪的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mycat 读写分离相关的知识,希望对你有一定的参考价值。

1、环境

系统:CentOS7

三台服务器,2台数据库,1台mycat

master:192.168.5.145

slave:192.168.5.146

mycat:192.168.5.149

拓扑图

2.master slave主从复制的搭建,就不演示过程了

两台分别创建允许远程访问mysql的用户

 grant all privileges on study.* to  \

 likuan@"192.168.5.%" \

 identified by 'Anchor120.';

3.mycat服务器的安装

安装jdk

yum -y install jdk

下载mycat 并上传至服务器,并解压

mv mycat /usr/local

修改配置

vim /usr/local/mycat/conf/schema.xml

mycat 读写分离

TESTDB 定义虚拟的数据库

study真实的数据库

balanced 读操作参数设置:

0 发送到writehost

1发送到所有的readhost

2读操作随机发送到readhost和writehost

writeType参数设置:

(1)0发送到第一个writehost

(2)1随机发送到可用的writehost

vim /usr/local/mycat/conf/server.xml

mycat 读写分离

test用户可读可写

user用户只可读

whitehost定义白名单

启动mycat

cd /usr/local/mycat/bin

mycat start

9066是管理端口

8066是schema登录端口

4.登录

mysql -h192.168.5.149 -utest -p \

-P8066  -DTESTDB

show databases;

查到的是在schema定义的虚拟数据库

use DESTDB;

show tables;

查看到的是真实数据库 study 中的表

测试读写分离

首先在slave数据库study中,

ceshi表这种插入一条数据

inser into ceshi values(8,"liqiu");

mycat 读写分离

在master数据库查看ceshi表

mycat 读写分离

登录mycat虚拟数据库TESTDB查看数据

看到和slave中的数据是一致

说明从slave读取的数据

在虚拟数据库插入数据,先插入到Master,再同步到slave数据库的

insert into ceshi values(9,"limi");


以上是关于mycat 读写分离的主要内容,如果未能解决你的问题,请参考以下文章

应用 | 同学,该学MyCat实际应用案例与MyCat读写分离了

MySQL+MyCat分库分表 读写分离配置MySQL+MyCat分库分表 读写分离配置

Mycat读写分离的简单实现

Mycat读写分离的简单实现

Mycat读写分离的简单实现

mycat 读写分离+分库分表+全局表