微服务 教程
1085个小节阅读:195.7k
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
<schema name="TESTDB" checkSQLschema="false" dataNode="db_node" sqlMaxLimit="100">
</schema>
参数:
- schema:逻辑库 name :逻辑库名称
- sqlMaxLimit:一次取多少条数据
- table:逻辑表
- dataNode:数据节点 对应 datanode标签
- rule:分片规则 对应 rule.xml
- primaryKey: 分片主键 可缓存
分片配置
xxxxxxxxxx
<dataNode name="db_node" dataHost="db_host" database="db_test" />
参数:
- name:分片名字
- dataHost:分片主机
- database:分片数据库
配置读写分离
xxxxxxxxxx
<dataHost name="host1" maxCon="1000" minCon="10" balance="2"
writeType="0" dbType="mysql" dbDriver="native" switchType="1"
slaveThreshold="100">
<writeHost host="" url="" user="" password=""></writeHost>
</dataHost>
参数:
- dataHost:数据主机(节点主机)
- dbType:数据库驱动native:MySQL JDBC: oracle SQLServer
- switchType: 是否主动读 1
Balance参数设置:
- balance=“0”, 所有读操作都发送到当前可⽤的writeHost上。
- balance=“1”,所有读操作都随机的发送到readHost。
- balance=“2”,所有读操作都随机的在writeHost、readhost上分发
WriteType参数设置:
- writeType=“0”, 所有写操作都发送到可⽤的writeHost上。
- writeType=“1”,所有写操作都随机的发送到readHost。
- writeType=“2”,所有写操作都随机的在writeHost、readhost分上发。
witchType参数设置:
- switchType="1", 主从自动切换
- switchType="2",从机延时超过slaveThreshold值时切换为主读
xxxxxxxxxx
mycat restart
xxxxxxxxxx
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!-- 数据库配置 与server.xml 中的数据库对应 -->
<schema name="db_test" checkSQLschema="false" dataNode="db_node" sqlMaxLimit="100"></schema>
<!-- 分片配置 -->
<dataNode name="db_node" dataHost="db_host" database="db_test" />
<!-- 物理数据库配置 -->
<dataHost name="db_host" maxCon="1000" minCon="10" balance="0"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="hostM1" url="192.168.66.101:3339" user="root"
password="123456">
<readHost host="hostS2" url="192.168.66.101:3340" user="root" password="123456" />
</writeHost>
</dataHost>
</mycat:schema>
在写主机插入
xxxxxxxxxx
insert into dog values(1,@@hostname);
注意:
@@代表系统变量。
在mycat查询
xxxxxxxxxx
select * from dog;