一、下载mycat2安装包
http://dl.mycat.org.cn/2.0/install-template/mycat2-install-template-1.21.zip
二、下载mycat2所需要的jar包
http://dl.mycat.org.cn/2.0/1.21-release/mycat2-1.21-release-jar-with-dependencies.jar
三、把下载好的jar包放到mycat2安装包的lib目录下
** 四、把压缩包发送至liunx服务器并解压**
unzip mycat2-install-template-1.21.zip
五、mysql创建用户,权限配置(如果在创建用户的时候出错了,则换一个复杂点的密码)
CREATE USER 'mycat'@'%' IDENTIFIED BY '123456';
--必须要赋的权限 mysql8才有的
GRANT XA_RECOVER_ADMIN ON *.* TO 'root'@'%';
--视情况赋的权限
GRANT ALL PRIVILEGES ON *.* TO 'mycat'@'%' ;
flush privileges;
六、修改mycat的prototypeDs.datasource.json文件(在mycat/conf/datasources下面)
vim mycat/conf/datasources/prototypeDs.datasource.json
七、只修改user、password、url三个属性(user和password及上面创建的账号密码,url为你mysql的地址)
八、把bin目录的文件加执行权限
cd mycat/bin
chmod +x *
九、在bin目录启动mycat
./mycat start 启动
./mycat stop 停止
./mycat console 前台运行
./mycat install 添加到系统自动启动(暂未实现)
./mycat remove 取消随系统自动启动(暂未实现)
./mycat restart 重启服务
./mycat pause 暂停
./mycat status 查看启动状态
十、liunx连接测试
root和123456是mycat默认连接用户密码,url为你mycat安装服务器ip地址,8066为mycat默认端口
** 十一、navicat连接**
十二、创建数据源
-- 创建数据源
/*+ mycat:createDataSource{
"name":"db0",
"url":"jdbc:mysql://192.168.239.142:3306/test",
"user":"mycat",
"password":"你的密码"
} */;
查看datasource目录下发现自动生成了一个新的json文件
十三、通过navicat连接mycat建库
发现生成了test.shcema.json
十四、编辑test.shcema.json文件添加"targetNam"db0",
然后重启mycat
十五、使用命令分库分表(通过id进行分片,分成1个数据库3张表 )
CREATE TABLE book (
`id` bigint(20) NOT NULL,
`date` date DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
dbpartition BY mod_hash(`id`) tbpartition BY mod_hash(`id`)
tbpartitions 3 dbpartitions 1;
十六、进行数据存储测试
INSERT INTO test.book VALUES(1,STR_TO_DATE("2022-01-01",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(2,STR_TO_DATE("2022-02-05",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(3,STR_TO_DATE("2022-03-05",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(4,STR_TO_DATE("2022-04-05",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(5,STR_TO_DATE("2022-05-05",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(6,STR_TO_DATE("2022-07-05",'%Y-%m-%d %H:%i:%s'));
INSERT INTO test.book VALUES(7,STR_TO_DATE("2022-07-08",'%Y-%m-%d %H:%i:%s'));
mycat库:
mysql库:
表一:
表二:
表三:
** 至此mycat安装及水平分表结束!**
版权归原作者 没有BUG就是最大的BUG 所有, 如有侵权,请联系我们删除。