Mycat分片存储

mac2025-12-24  8

MySQL分片存储

一.分库/分表方法

横向 按照字段 水平切割(取余 9%3 10%3 11%3) 纵向 按照类型 垂直切割(10000 10010 10020)

二.mycat简介

Mycat基于java开发,数据并发量比较高的存储 1.适合于较多数据 2.支持mysql oracle SQLserver MongDB 3.支持主从分离 4.支持分片存储 5.阿里巴巴cobar

三:分片规则

1.枚举 2.求模 3.固定 4.范围 5.日期 6.通配 7.ASCII码 8.编程 9.字符串hash 10.一致性hash

四.配置

56 分片服务器 53 54 55数据库服务器 #yum -y install java-1.8.0.openjdk #tar -xzvf Mycat-server… #mv mycat/ /usr/local #ls /usr/local/mycat ----/bin 启动服务 ----/conf 配置文件 ----/catlet 拓展文件 ----/lib 命令 ----/logs 运行,启动日志 ----/wrapper.log 服务启动,运行日志 ----/mycat.log 错误日志 配置文件 —server.xml 用户名,密码,逻辑库 —rule.xml 规则 —schema.xml 分片配置 1.配置用户密码 #vim /usr/local/mycat/conf/server.xml 2.vim /usr/local/mycat/conf/schema.xml …

........ Name 库名,表名 Datanode 节点 Rule 规则 3.datanode=dn1,dn2,dn3 节点 4.Datahost=mysql53,mysql54,mysql55 主机名 5.Database=db1,db2,db3 库名 6.Usr=192.168.4.53,54,55 ip 7.User=admin 用户 8.Password=123456 密码 192.168.4.53,54,55 mysql>create database db1,db2,db3; mysql>grant all on *.* to admin@”%” identified by “123456”; #/usr/local/mycat/bin/mycat start #netstat -atnup | grep 8066 #mysql -h192.168.4.57 -P8066 -uroot -p123456

五.枚举规则

#vim /etc/local/mycat/conf/schema.xml 表名 字段 分片规则 mysql>use TESTDB; mysql>create table employee(ID int primary key,sharding char(10),name char(10),common char(200)); mysql>insert into employee values(1,10010/10000/10020,”tom”,”xxxxxx”); #vim /usr/local/mysql/partition_hash_int_txt 10000=0 10010=1 10020=2

六.求模规则

#vim /usr/local/mycat/conf/schema.xml mysql>create table hotnews(id int,name char(10)); mysql>insert into hotnews values(9/10/11.”bob”);

最新回复(0)