JAVA全系列 教程
3762个小节阅读:7088.1k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
首先创建读写的数据源
xxxxxxxxxx
/*+ mycat:createDataSource{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":3000,
"maxRetryCount":5,
"minCon":1,
"name":"m1",
"password":"123456",
"type":"JDBC",
"url":"jdbc:mysql://192.168.47.100:3306?useUnicode=true&serverTimezone=UTC&characterEncoding=UTF-8",
"user":"root",
"weight":0
} */;
创建读的数据源
xxxxxxxxxx
/*+ mycat:createDataSource{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
"instanceType":"READ",
"maxCon":1000,
"maxConnectTimeout":3000,
"maxRetryCount":5,
"minCon":1,
"name":"m1s1",
"password":"123456",
"type":"JDBC",
"url":"jdbc:mysql://192.168.47.101:3306?useUnicode=true&serverTimezone=UTC&characterEncoding=UTF-8",
"user":"root",
"weight":0
} */;
查询数据源
xxxxxxxxxx
/*+ mycat:showDataSources{} */
配置主从,masters(主)和replicas(从)分别对应着m1和m1s1
xxxxxxxxxx
/*! mycat:createCluster{
"clusterType":"MASTER_SLAVE",
"heartbeat":{
"heartbeatTimeout":1000,
"maxRetry":3,
"minSwitchTimeInterval":300,
"slaveThreshold":0
},
"masters":[
"m1"
],
"maxCon":2000,
"name":"prototype",
"readBalanceType":"BALANCE_ALL",
"replicas":[
"m1s1"
],
"switchType":"SWITCH"
} */;
查询集群
xxxxxxxxxx
/*+ mycat:showClusters{} */
关联着m1和m1s1数据源,m1负责读写,m1s1负责读
xxxxxxxxxx
CREATE DATABASE db1 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
执行完后发现除了mycat,主从库也新增了一个db1
修改数据源
xxxxxxxxxx
[root@VM-0-11-centos mysqlms]~ vim /mydata/mycat/mycat/conf/schemas/db1.schema.json
在里面添加,让它指向刚刚创建的name为prototype的集群
xxxxxxxxxx
"targetName":"prototype"
重启mycat
xxxxxxxxxx
[root@VM-0-11-centos bin]~ cd /mydata/mycat/mycat
[root@VM-0-11-centos bin]~ ./mycat restart
在mycat的db1库中新建一张SYS_USER表
xxxxxxxxxx
CREATE TABLE SYS_USER(
ID BIGINT PRIMARY KEY,
USERNAME VARCHAR(200) NOT NULL,
ADDRESS VARCHAR(500)
)
执行完成后查看db1.schema.json文件,发现它记录了sql语句
分别往主库和从库中添加一条数据,要不一样的