Mycat学习实战-Mycat基本功能
admin
2023-05-15 12:02:40
0

Mycat学习实战-Mycat基本功能


学习 mycat mysql



  • Mycat学习实战-Mycat基本功能
  • 1. Mycat高可用-读写分离

    • 1.1 读写分离配置参数

    • 1.2 心跳配置参数

  • 2. Mycat高可用-多主切换

    • 2.1 主从切换配置参数

    • 2.2 主从切换标记

  • 3 注解


1. Mycat高可用-读写分离

Mycat学习实战-Mycat基本功能

1.1 读写分离配置参数

Schema.dataHost 参数balance设置值:

  1. balance=”0”, 不开启读写分离机制,所有读操作都发送到当前可用的writeHost上。

  2. balance=”1”,全部的readHost与stand by writeHost参与select语句的负载均衡, 
    简单的说,当双主双从模式(M1->S1,M2->S2,并且M1与 M2互为主备), 
    正常情况下,M2,S1,S2都参与select语句的负载均衡。

  3. balance=”2”,所有读操作都随机的在writeHost、readhost上分发。

  4. balance=”3”,所有读请求随机的分发到wiriterHost对应的readhost执行,writerHost不负担读压力

事务内的SQL,默认走写节点,以注释/balance/开头,则会根据balance=“1”或“2”去获取 b. 
非事务内的SQL,开启读写分离默认根据balance=“1”或“2”去获取,以注释/balance/开头则会走写解决部分已 
经开启读写分离,但是需要强一致性数据实时获取的场景走写

1.2 心跳配置参数

switchType=“1” :基于基本的表访问判断 
schema.xml

select user()

switchType=“2” : show slave status会显示主从同步状态 
schema.xml

show slave status 

Mycat心跳机制通过检测 show slave status 中的 “Seconds_Behind_Master”, “Slave_IO_Running”, “Slave_SQL_Running” 三个字段来确定当前主从同步的状态以及Seconds_Behind_Master主从复制时延,当Seconds_Behind_Master>slaveThreshold时,读写分离筛选器会过滤掉此Slave机器。

switchType=”3” ,MyCAT心跳检查语句配置为 show status like ‘wsrep%’ ,开启MySQL集群复制状态状态绑定的读写分离与切换机制 
schema.xml

 show status like ‘wsrep%’ 

配置文件:conf/log4j2.xml 
日志文件:logs/mycat.log 
说明:修改log4j日志收集为debug方式,通过log信息可以分析出来是否读写分离发 
生在那个节点

2. Mycat高可用-多主切换

Mycat学习实战-Mycat基本功能

2.1 主从切换配置参数

schema.xml

select user()

需要配置多个writeHost节点

switchType属性 
-1 表示不自动切换 
1 默认值,自动切换 
2 基于MySQL主从同步的状态决定是否切换 ,心跳语句为show slave status 
3 基于MySQL galary cluster的切换机制(适合集群)心跳语句为 show status like ‘wsrep%’

2.2 主从切换标记

conf/dnindex.properties

#update#Tue Jul 25 14:20:40 CST 2017dh-01=0

使用中注意事项: 
前提是的配置至少2个writeHost 
并且开启自动切换 
能不自动切就别自动切 
能手动执行就不要自动 
数据丢失问题 
原主加入后当从

3 注解

mycat对不支持的sql提供一种方案即为注解(在要执行的sql语句前添加额外的一段由注解sql组成的代码,这样sql就能正确执行,相当于对不支持的sql语句做了一层透明代理转发。) 
形式是: 
/*!mycat: sql=Sql语句*/真正执行Sql 
注解支持的’!’不被 mysql 单库兼容, 
注解支持的’#’不被 mybatis 兼容 
新增加 mycat 字符前缀标志 Hintsql:”/* mycat: /”

参数说明整理列表:

Mycat学习实战-Mycat基本功能

参考资料: 
[1] http://mycat.io/ 
[2] 《分布式数据库架构及企业实践——基于Mycat中间件》 
[3] 龙哥官方课程课件


相关内容

热门资讯

德国总理,你这句话够狠 不得不说,德国总理默茨这句话,够狠够生猛。曾几何时,美欧是亲密的一家,很多西方国家孩子以去美国读书生...
中国U17男足力克沙特阿拉伯队... 2026年U17亚洲杯1/4决赛,中国U–17男足3比1力克东道主沙特阿拉伯U–17男足,晋级本届亚...
美联储:沃什正式就任前鲍威尔将... △凯文·沃什(资料图)当地时间5月15日,美联储发布声明称,在凯文·沃什正式宣誓就任美联储主席之前,...
联合国安理会审议叙利亚局势,中... 当地时间5月15日,安理会举行叙利亚问题公开会,聚焦该国政治和人道局势。中方代表指出,维护叙利亚形势...
特朗普在中国破例喝酒了?白宫回... 美国总统特朗普日前访华敬酒的画面在社交媒体广泛流传,许多人称,他这是破例了,因为他此前滴酒不沾。白宫...
英国绿党领袖:部长们应该做正确... 据凤凰卫视报道,英国工党首相斯塔默仍然面临严峻的党内逼宫压力。当地媒体指,超过半数工党下院议员希望他...
全民围观某君半蹲合影:我们崇拜... 马斯克打卡点:半蹲的不是膝盖,是整个科技行业的想象力 ——当某君半蹲合影、库克排队等待,科技大佬们的...
深圳第二类医疗器械备案所需材料... 办理深圳第二类医疗器械经营备案,最耗时间的就是材料准备。很多企业因为资料漏项、盖章错误、扫描模糊、填...
直击杭州人形机器人展:文旅物流... 《科创板日报》5月15日讯(记者 王耐)2026年第二届杭州国际人形机器人展,有600家上下游企业参...
“前半生是恶霸,后半生是学霸”... 一个人的逆袭叫传奇。一群人的集体转行,叫世道变了。文|张雪莹出品|Vista天下知识局提到日本黑帮,...