先在服務器上建立三個數據庫git
create database test_db1; create database test_db2; create database test_db3;
而後將配置 上面建立的三個庫爲 mycat 的數據源github
conf/schema.xml 設置 user 表 , 數據節點分別爲上面設置的 dn1,dn2,dn3, 分片規則爲id根據 auto-sharding-long 的規則劃分到某個數據節點數據庫
在 conf/rule.xml 中找到 auto-sharding-long 的規則緩存
接着在此文件中搜索 rang-long 會查到規則存放在 autopartition-long.txt服務器
conf/autopartition-long.txt (每一個分區存500萬條)分佈式
解析爲:ide
id 1 - 5000000 時,放入數據節點索引0測試
id 5000001 - 10000000 時,放入數據節點索引1大數據
id 1000001 - 15000000 時,放入數據節點索引2spa
*** 若是插入的數據超過 1500萬條時,就須要擴容了,再加個節點 ,依次類推
啓動 mycat:
測試 mycat:
應用中如何使用,官網已經說明了,直接鏈接 mycat 應用就行了,至關於 mycat 代理了 MySQL ,之後操做 MySQL 先通過 mycat
https://github.com/MyCATApache/Mycat-Server
帳號密碼就是 conf/server.xml 配置的帳號密碼
在 mycat 管理的 TESTDB 數據庫下執行以下 SQL 語句
# 建立測試 user 表 create table user(id bigint not null primary key,name varchar(100)) comment "測試用戶表"; # 插入數據 insert into user(id,name) values(1,'zhangsan'); insert into user(id,name) values(2,'lisi'); insert into user(id,name) values(3,'wanger'); insert into user(id,name) values(5000001,'mazi'); insert into user(id,name) values(10000001,'David'); # 查詢如下你插入的數據 select * from user;
執行以上語句,會發現
test_db一、test_db二、test_db3 這三個數據庫都建立了一張 user 表;
test_db1.user 表中有插入的前3條數據
test_db2.user 表中有插入的第4條數據
test_db3.user 表中有插入的第5條數據
上面一個簡單的插入查詢就完成。