1.准备工作

mycat依赖Java环境,所以必须安装jdk

yum install java-1.8.0-openjdk-devel.x86_64

配置JAVA_HOME环境变量

ls -lrt /etc/alternatives/java
#可以看到:/etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/jre/bin/java vim /etc/profile
#添加

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64
 export JRE_HOME=${JAVA_HOME}/jre
 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
 export PATH=${JAVA_HOME}/bin:$PATH

source /etc/profile

创建两个pxc集群,充当两个分片

创建数据表,用于保存切分数据,两个PXC集群都建立

CREATE TABLE t_user (
id INT ( 10 ) UNSIGNED NOT NULL,
username VARCHAR ( 200 ) NOT NULL,
passwords VARCHAR ( 2000 ) NOT NULL,
tel CHAR ( 11 ) NOT NULL,
locked TINYINT ( 1 ) UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY ( id ),
KEY idx_username ( username ),
UNIQUE KEY unq_username ( username )
) ENGINE = INNODB
DEFAULT charset = utf8;

下载mycat压缩包

wget http://dl.mycat.io/1.6.5/Mycat-server-1.6.5-release-20180122220033-linux.tar.gz
解压到/usr/local/下即可

编辑mycat配置文件

文件               作用                                          修改内容
rule.xml 切分算法 修改mod-long分片数量为2
server.xml 虚拟mysql 修改用户名,密码和逻辑库
schema.xml 数据库连接,读写分离,负载均衡,数据表映射 定义连接,读写分离,负载均衡,数据表映射

vim server.xml

如下:

      #定义用户权限  
<user name="admin" defaultAccount="true">
<property name="password">Abc_123456</property>
<property name="schemas">test1</property> <!-- 表级 DML 权限设置 -->
<!--
<privileges check="false">
<schema name="TESTDB" dml="0110" >
<table name="tb01" dml="0000"></table>
<table name="tb02" dml="1111"></table>
</schema>
</privileges>
-->
</user>
#定义只读用户
<!--
<user name="user">
<property name="password">user</property>
<property name="schemas">TESTDB</property>
<property name="readOnly">true</property>
</user>
-->

vim schema.xml

vim rule.xml

开放防火墙端口,关闭selinux

端口          作用
8066 数据服务
9066 管理端口

启动和关闭mycat

启动:
chmod -R 777 /bin/*.sh
./bin/mycat start 关闭:
./bin/mycat stop
 

2.测试

登陆mycat:

mysql -uadmin -pAbc_123456 -h 127.0.0.1 -P8066

插入数据:

mysql> use test1;

mysql> insert into t_user(id,username,passwords,tel,locked) values(1,"jack","","",0);
Query OK, 1 row affected (0.11 sec) mysql> insert into t_user(id,username,passwords,tel,locked) values(2,"tom","","",1);
Query OK, 1 row affected (0.13 sec) mysql> select * from t_user;
+----+----------+-----------+-------------+--------+
| id | username | passwords | tel | locked |
+----+----------+-----------+-------------+--------+
| 2 | tom | 123456 | 13106061112 | 1 |
| 1 | jack | 123456 | 13106061111 | 0 |
+----+----------+-----------+-------------+--------+
2 rows in set (0.09 sec)

分别登陆两个pxc节点查看:

节点一:
mysql> select * from t_user;
+----+----------+-----------+-------------+--------+
| id | username | passwords | tel | locked |
+----+----------+-----------+-------------+--------+
| 1 | jack | 123456 | 13106061111 | 0 |
+----+----------+-----------+-------------+--------+ 节点二:
mysql> select * from t_user;
+----+----------+-----------+-------------+--------+
| id | username | passwords | tel | locked |
+----+----------+-----------+-------------+--------+
| 2 | tom | 123456 | 13106061112 | 1 |
+----+----------+-----------+-------------+--------+

3.集群方案(若用tpcc做压力测试,需修改配置文件设置pxc_strict_mode=DISABLED)

4.mycat部署的更多相关文章

  1. MyCAT部署及实现读写分离(转)

    MyCAT是mysql中间件,前身是阿里大名鼎鼎的Cobar,Cobar在开源了一段时间后,不了了之.于是MyCAT扛起了这面大旗,在大数据时代,其重要性愈发彰显.这篇文章主要是MyCAT的入门部署. ...

  2. MyCat部署运行(Windows环境)与使用步骤详解

        目录(?)[+] 1.MyCat概念 1.1 总体架构 MyCAT的架构如下图所示: MyCAT使用MySQL的通讯协议模拟成一个MySQL服务器,并建立了完整的Schema(数据库).Tab ...

  3. 2020-05-08:mycat部署数据库集群的时候 遇到了哪些坑

    福哥答案2020-05-08:答案仅供参考,来自群员 使用activity时,连接mycat设置进去的序列化的流程变量,反序列化会报错这个类型字段类型是blob类型,mycat对这种类型处理时有点问题

  4. 基于Mycat实现读写分离

    随着应用的访问量并发量的增加,应用读写分离是很有必要的.当然应用要实现读写分离,首先数据库层要先做到主从配置,本人前一篇文章介绍了mysql数据库的主从配置方式即:<mysql数据库主从配置&g ...

  5. mycat 单库多表实现水平分片

    环境 mycat : 192.168.126.128 root root mysql1: 192.168.126.129:3306 root lizhenghua mysql2: 192.168.12 ...

  6. 基于mycat高可用方案——数据库负载

    引言 传统企业级应用一般采取单台数据库,吞吐所有应用的读写,随着互联网的高速发展,以及微服务架构越来越普及,往往采用分库分表来支撑高速增长的大量业务数据吞吐.分库分表主要有两种方式:水平分表和垂直分库 ...

  7. mycat详细

    MyCAT的优势基于阿里开源的Cobar产品而研发,Cobar的稳定性.可靠性.优秀的架构和性能以及众多成熟的使用案例使得MYCAT一开始就拥有一个很好的起点,站在巨人的肩膀上,我们能看到更远.业界优 ...

  8. Mariadb 基于Mycat实现读写分离

    环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat    :192.168.200.112 (1)      安装jdk,先查看本机是 ...

  9. MySQL for OPS 10:MyCAT 分布式架构

    写在前面的话 在学习的索引的时候,有提到,当数据表数据达到 800W 的时候,索引的性能就开始逐步下降.对于一个公司而言,主要业务数据表达到 1000W 都很容易.同时这张表一般都是业务常用的表,操作 ...

随机推荐

  1. django从零开始-入门

    1.创建应用 sign python .\manage.py startapp sign 2.运行项目 python .\manage.py runserver 3.添加应用sign到项目 编辑set ...

  2. 「JLOI2015」骗我呢 解题报告?

    「JLOI2015」骗我呢 这什么神仙题 \[\color{purple}{Link}\] 可以学到的东西 对越过直线的东西翻折进行容斥 之类的..吧? Code: #include <cstd ...

  3. 选做题:设计并实现一个Book类

    目录 题目分析 设计思路 具体代码 测试代码 运行截图 参考资料 题目分析 题目内容 0.设计并实现一个Book类,定义义成Book.java,Book 包含书名,作者,出版社和出版日期 1.这些数据 ...

  4. 洛谷P5111 zhtobu3232的线段树

    题意:给定线段树,上面若干个节点坏了,求能表示出多少区间. 区间能被表示出当且仅当拆出来的log个节点都是好的. 解:每个区间在最浅的节点处计算答案. 对于每个节点维护从左边过来能有多少区间,从右边过 ...

  5. 第十四篇-ImageButton控制聚焦,单击,常态三种状态的显示背景

    这里先用XML设置. myselector.xml <?xml version="1.0" encoding="utf-8"?> <selec ...

  6. Linux系统调用之内存管理

    brk 改变数据段空间的分配 sbrk 参见brk mlock 内存页面加锁 munlock 内存页面解锁 mlockall 调用进程所有内存页面加锁 munlockall 调用进程所有内存页面解锁 ...

  7. IO处理要注意的事:关闭资源!关闭资源!关闭资源!

    案例1: 现象: 同事做本地txt数据切分然后处理,发现删除本地临时文件目录中的文件时,有时成功,有时删除完了发现文件还在.代码各处都不报错,且各种日志打印正常. 解决: 最后发现,是业务逻辑代码中有 ...

  8. 改xml

    <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...

  9. Linux系统下DNS主从配置详解

    一.DNS概述DNS(Domain Name System),即域名系统.因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串. ...

  10. day-03(js)

    回顾: css: 层叠样式表 作用: 渲染页面 提供工作效率,将html和样式分离 和html的整合 方式1:内联样式表 通过标签的style属性 <xxx style="...&qu ...