Linux服务器集群代理技术——mycat安装及配置

  • 集群代理技术

DB Proxy,数据库中间件,实现服务器读写分离(M-S-S M-M-S-S),负载均衡 (Galera Cluster),支持数据的分片自动路由与聚合。
产品包括:MySQL Proxy(MySQL官方)、Atlas(奇虎360)、DBProxy(美团点评)、Amoeba(早期阿里)、cober (阿里)、MyCat (阿里)等。

Linux服务器集群代理技术——mycat安装及配置

  • Mycat部署

准备好域名解析(这里我不做域名解析。有需要可以自己做一下,修改本地hosts文件)

下载jdk图示
Linux服务器集群代理技术——mycat安装及配置

配置 Java环境

tar xvf jdk-8u91-linux-x64.tar.gz -C /usr/local/ls /usr/local/jdk1.8.0_91/ /usr/local/java

vim /etc/profile                          添加设置JAVA变量

 JAVA_HOME=/usr/local/java
 PATH=$JAVA_HOME/bin:$PATH
 export JAVA_HOME PATH

source /etc/profile
java      -version              查看Java版本

配置Mycat

wget http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gztar xf  Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz -C /usr/local/ls /usr/local/mycat/

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

注释多余用户

Linux服务器集群代理技术——mycat安装及配置

启动mycat管理员

Linux服务器集群代理技术——mycat安装及配置

配置mycat后端
先备份!!

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

Linux服务器集群代理技术——mycat安装及配置

解释:
schema name:mycat维护的集群名称。
datanode:后方节点群的名称。
datahost:后方节点群的主机名称。
writehost:写主机
readhost:读主机

在本例中switchType值设置为1,表示自动切换,某些对主从数据一致要求较高的场景,建议使用2判断主从状态后再切换
切换的触发条件为主节点mysql服务崩溃或停止
slaveThreshold 主从的延迟在多少秒以内,则把读请求分发到这个从节点,否则不往这个节点分发,假设生产环境能容忍的主从延时为60秒,则设置此值为60,此例中设置值为100

属性的介绍

balance 类型
balance=“0”, 关闭读写分离功能。
所有读操作都发送到当前可用的writeHost上。

balance=“1”,开启读写分离
所有读操作都随机的发送到readHost。

writeType 属性
备份型
writeType=“0”, 所有写操作发送到配置的第一个 writeHost,
第一个挂了切到还生存的第二个writeHost,
重新启动后已切换后的为准,切换记录在配置文件中:dnindex.properties .

负载型
writeType=“1”,所有写操作都随机的发送到配置的 writeHost。

switchType 模式
switchType指的是切换的模式:

  1. switchType=’-1’ 负1表示不自动切换
  2. switchType=‘1’ 默认值,表示根据延时自动切换
  3. switchType=‘2’ 根据MySQL主从同步的状态决定是否切换,心跳语句为 show slave status

配置mysql群
M-M-S-S 准备Mycat连接的用户及权限
grant all on . to ‘mycatproxy’@’ 192.168.231.131’ identified by ‘XieDongwy@163’; 192.168.0.118是mycat服务器的IP

启动Mycat
在mycat服务器上

/usr/local/mycat/bin/mycat startnetstat  -anpt | grep java                    监测端口是否启动ps aux | grep mycat                       检测进程是否启动
yum install -y mariadb                     安装客户端
mysql -h192.168.231.129 -uroot -p123456 -P8066
show databases;

create database  tianyun;                在mysql-master1上创库创表
create table tianyun.t1 (id int);
上一篇:mysql5.7集群方案


下一篇:SpringBoot 整合 MyCat 实现读写分离