MyCat学习笔记
2021/5/14 18:27:21
本文主要是介绍MyCat学习笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
MyCat学习笔记
MyCat官网 - Mycat数据库分库分表中间件
资源下载地址 : http://dl.mycat.io/
基础
先了解下理论概念:MySQL数据库切分
MySQL分布式数据库中间件对比, 通过这篇文章最终选择使用MyCat
安装配置MyCat
详见:
- 一步一步在Windows中使用MyCat负载均衡 上篇
- 一步一步在Windows中使用MyCat负载均衡 下篇
目录结构
详见:
- mycat目录结构以及主要配置文件解读
- mycat实现mysql读写分离
附上我自己测试用的, 已经配置好的MyCat下载地址 :
链接: https://pan.baidu.com/s/1TYyBZAbIfF1jrgBoEDqpgQ 提取码: 5396
里面有个数据库
文件夹, 里面的db1.sql, db2.sql, db3.sql是建库脚本, MyCat测试SQL.sql是测试用的脚本.
关于几个重要的配置文件, 像schema.xml
,rule.xml
,server.xml
里面都有很详细的注释.
监控
详见 :
- WINDOWS下安装MYCAT-WEB
需要注意的点
-
useGlobleTableCheck ( 控制全局表的一致性检测 )
如果设置了useGlobleTableCheck ( 这个配置在 server.xml中 ) 为开启状态的话,就需要在每个全局表中添加一个
_mycat_op_time
字段,类型为bigint, 不然会报**Unknown column ‘_mycat_op_time’ in ‘field list’**这个错误, 这个的原理就是通过在全局表增加_mycat_op_time
字段来进行一致性检测,类型为bigint,create语句通过mycat执行会自动加上这个字段,其他情况请自己手工添加。
结合MySQL主从库实现读写分离
- 将dataHost改为下面这样:
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="2" slaveThreshold="100"> <heartbeat>show slave status</heartbeat> <!-- writeHost readHost 指定后端数据库的相关配置给mycat,用于实例化后端连接池。 --> <!-- 这就是一个简单的读写分离,主机是HostM1, 从机为HostS1 --> <!-- 可以有多个写(主)主机 --> <writeHost host="hostM1" url="localhost:3306" user="root" password="111111"> <!-- 可以有多个读(从)主机 --> <readHost host="hostS1" url="192.168.0.145:3306" user="root" password="111111" /> </writeHost> </dataHost>
注意这里switchType="2"
, <heartbeat>show slave status</heartbeat>
-
配置MySQL主从库
参考: windows下MySQL主从复制配置
这篇关于MyCat学习笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享