linux下的mycat(分库分表)

首先放开 3306 端口
保证 root 用户可以被 mycat 访问
在 Mycat 中通过 Master 数据库的 root 用户访问 Master 数据库
grant all privileges on . to ‘root’@’%’ identified by ‘password’ with grant option;
flush privileges;
1.下载Mycat-server-xxxx-linux.tar.gz
2.解压上传的MyCat压缩包
3.将解压的文件夹复制到/usr/local/mycat
4.MyCat目录介绍
bin 目录里是启动脚本
conf 目录里是配置文件
catlet 为 Mycat 的一个扩展功能
lib 目录里是 Mycat 和它的依赖 jar
logs 目录里是 console.log 用来保存控制台日志,和 mycat.log 用来保存 mycat 的 log4j日志
5.MyCat配置文件
MyCat是代理,MyCat后面是物理数据库。和Web服务器的Nginx类似。对于使用者来说,访问的都是MyCat,不会接触到后面的数据库

Mycat 的配置文件都在 conf 目录里面,这里介绍几个常用的文件

在这里插入图片描述
server.xml
在这里插入图片描述
在这里插入图片描述

schema.xml
在这里插入图片描述
在这里插入图片描述
节点与属性介绍

配置逻辑库标签
name ----逻辑库名称
checkSQLschema ----是否检查sql语法中的schema信息
sqlMaxLimit ----Mycat 在执行 SQL 的时候,如果 SQL 语句中没有 limit 子句.自动增加 limit 子句. 避免一次性得到过多的数据,影响效率. limit子句的限制数量默认配置为100.如果 SQL中有具体的 limit子句,当前属性失效.
SQL : select * from table; mycat 解析后: select * from table limit 100;

定义逻辑表的标签 name ----逻辑表名 dataNode ----数据节点名称 rule ----分片规则名称

定义数据节点的标签

name ----数据节点名称
dataHost ----引用 dataHost 标签的 name 值,
database ----物理数据库 database 名称

定义数据主机的标签
name ----定义逻辑上的数据主机名称
max connections 最大连接数
min connections 最小连接数
dbType 数据库类型
dataHost 子标签 writeHost写数据的数据库定义标签. 实现读写分离操作.
host 数据库命名
url 数据库访问路径
user 数据库访问用户名
password 访问用户密码
writeHost 子标签 readHost

rule.xml
用于定义分片规则的配置文件
mycat 默认的分片规则: 以 500 万为单位,实现分片规则

逻辑库 A 对应 dataNode - db1 和 db2. 1-500 万保存在 db1 中, 500 万零 1 到 1000 万保存在 db2 中,1000 万零 1 到 1500 万保存在 db1 中.依次类推.
在这里插入图片描述
在这里插入图片描述
配置读写分离:
Schema.xml在这里插入图片描述
Server.xml
在这里插入图片描述
安装路径/bin/mycat start //启动mycat命令
安装路径/bin/mycat stop //停止命令
安装路径/bin/mycat restart //重启命令
安装路径/bin/mycat status //查看 MyCat 状态

命令行访问方式
mysql -u 用户名 -p 密码 -hmycat 主机 IP -P8066

使用 MyCat 实现分库时,先在 MyCat 中定义逻辑库与逻辑表,然后在 MyCat 的链接中执行创建表的命令必须要在 MyCat 中运行。因为 MyCat 在创建表时,会在表中添加一个新的列,列名为_slot。
使用 MyCat 插入数据时,语句中必须要指定所有的列。即便是一个完全项插入也不允许省略列名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值