赞
踩
一、下载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安装及水平分表结束!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。