MyCat2使用

前言

Mycat2用于分表分库操作软件,是一款分布式关系型数据库,支持分布式SQL查询,兼容MySQL通信协议,以Java生态支持多种后端数据

Mycat2学习

Mycat2学习文档

Mycat2学习文档可以参考

arduino 复制代码
http://mycatone.top/

Mycat2使用

1、下载Mycat2,然后将

mycat2-1.21-release-jar-with-dependencies.jar包放入到lib文件夹下

2、进入到datasources文件目录下,在文件prototypeDs.datasource.json下,配置MySQL连接数据源,当然也可以新建新的*.datasource.json文件

ruby 复制代码
{
	"dbType":"mysql",
	"idleTimeout":60000,
	"initSqls":[],
	"initSqlsGetConnection":true,
	"instanceType":"READ_WRITE",
	"maxCon":1000,
	"maxConnectTimeout":3000,
	"maxRetryCount":5,
	"minCon":1,
	"name":"prototypeDs",
	"password":"123456",
	"type":"JDBC",
	"url":"jdbc:mysql://localhost:3307/mysql?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8",
	"user":"root",
	"weight":0
}

3、然后查看prototype.cluster.json配置文件,这里配置主从数据库名啥的

json 复制代码
{
	"clusterType":"MASTER_SLAVE",
	"heartbeat":{
		"heartbeatTimeout":1000,
		"maxRetry":3,
		"minSwitchTimeInterval":300,
		"slaveThreshold":0
	},
	"masters":[
		"prototypeDs"
	],
	"maxCon":200,
	"name":"prototype",
	"readBalanceType":"BALANCE_ALL",
	"switchType":"SWITCH"
}

这里

json 复制代码
"masters":[
		"prototypeDs"
	],

和数据源的name保持一致

4、schemas用于配置sql语句,看你需要

5、 可以去到conf/user目录下,查看mycat下的root.user.json用户表和密码

6、 然后管理员形式启动一个cmd窗口进入到Mycat2安装目录下的bin文件夹,执行mycat install

7、 安装成功的话,再执行mycat start ,启动成功的话

失败的话,可以到mycat2安装目录下中的log查看错误日志

8、可以使用mycat remove移除mycat服务

9、安装成功之后,这个时候就不用进入到MySQL服务了,可以MyCat2操作mycal了,使用以下命令进入到Mycat里面,默认端口是8066

css 复制代码
mysql -uroot -p -P8066

root是mycal账号,当然为mycat创建一个账号也可以

10、 然后在控制台执行

bash 复制代码
CREATE DATABASE test;

创建test数据库

11、 进入到test数据库下

bash 复制代码
use test;

12、 创建数据库表

sql 复制代码
 CREATE TABLE t_user(id INT,name VARCHAR(20));
 

13、 然后往表插入数据

sql 复制代码
 INSERT INTO t_user VALUES(1,'kaolvkaolv');
 

14、 也可以使用navicat连接mycat

15、 这个时候进入到mysql数据库,会发现有个test数据库等

总结

Mycat2是一个优秀的分表分库数据库软件,当然分表分库操作还有很多优秀组件,看个人选择和上手程度

相关推荐
虹科网络安全11 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
axng pmje11 小时前
Java语法进阶
java·开发语言·jvm
uzong11 小时前
9 种 RAG 架构,每位 AI 开发者必学:完整实战指南
后端
rKWP8gKv711 小时前
Java微服务性能监控:Prometheus与Grafana集成方案
java·微服务·prometheus
老前端的功夫11 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_4352879211 小时前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
小江的记录本11 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
止语Lab11 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
yaoxin52112312 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
极客先躯14 小时前
高级java每日一道面试题-2025年11月24日-容器与虚拟化题[Dockerj]-runc 的作用是什么?
java·oci 的命令行工具·最小可用·无守护进程·完全标准·创建容器的核心流程·runc 核心职责思维导图