Mycat實現單庫分表

2021-10-25 12:22:07 字數 1612 閱讀 2977

一 mycat的配置

(1)如下所示:重點關注table name 這一行:

primarykey 指定主鍵

subtables;指定子表

rule:指定分片演算法

select user()

(2)配置資料來源

在xuyu資料庫中建立兩張表:

create table student2(

id int not null auto_increment,

username char(20) not null,

password char(33) not null,

address char(8) not null,

birthday date,

department_id int not null,

primary key (id)

);create table student1(

id int not null auto_increment,

username char(20) not null,

password char(33) not null,

address char(8) not null,

birthday date,

department_id int not null,

primary key (id)

);student1 與 student2

(3)啟動並連線mycat

通過執行sql語句 插入資料:

insert into student(id,username,password,address,birthday,department_id) values(1,'小余','123456','四川成都','2018-06-01',2);

insert into student(id,username,password,address,birthday,department_id) values(2,'小余','982352','成都大學','2015-04-03',3);

插入成功,接下來直接連mysq看資料

通過上圖可以看到,id為1的資料插入表2中,id為2的插入表1.

通過mycat查詢資料:

(1)查詢所有資料,會掃瞄兩張表

(2)查詢一張表,會去其中乙個表查,根據配置的路由演算法

MyCat分表分庫規則實現

先根據擷取欄位的日期分組,再根據字段值資料按天入錶 author fx demon public class partitionbysubstringrangedateday extends abstractpartitionalgorithm implements rulealgorithm ov...

mycat實現mysql分庫分表

1.mycat介紹 mycat是乙個開源的分布式資料庫系統,是乙個實現了mysql協議的伺服器,前端使用者可以把它看作是乙個資料庫 用mysql客戶端工具和命令列訪問,而其後端可以用mysql原生協議與多個mysql伺服器通訊,也可以用jdbc協議與大多數主流資料庫伺服器通訊,其核心功能是分表分庫,...

Mycat分庫分表

schema.xml 配置 name dn1 datahost localhost1 database db1 name dn2 datahost localhost1 database db2 name dn3 datahost localhost1 database db3 把localhost...