writeHost和readHost是读写的设置,一个dataHost内可以设置多个读和写。但假如writeHost指定的后端数据库宕机,那么这个writeHost绑定的全部readHost也将不行用;另一方面,MyCat会自动检测到writeHost宕机,并切换到备用的writeHost上。
七、MyCat分片
在MyCat中将表分为两种大的观念:数据量小且不必要做数据切分的表,称为非分片表;数据量大到单库机能、容量不敷以支撑,数据必要通进程度切分匀称漫衍到差异的数据库中的表,称为分片表。而中间件最终必要处理赏罚的工作是对数据切分、聚合。
7.1 ER相关分片表
ER模子是实体相关模子,普及回收观念模子计划要领,根基元素是实体、相关和属性。MyCat将它引入数据切分法则中,使得有相互依靠的表可以或许凭证某一法则切分到沟通的节点上,停止跨库Join关联查询。详细详情设置内容在这里不做描写请参考官方文档。
八、成果与上风
8.1 常用呼吁
- MyCat提供相同数据打点监控方法,可以通过MySQL呼吁行登录打点端口(9066)执行响应的SQL语句举办打点,也可以通过JDBC方法举办长途毗连打点。
- Reload @@config呼吁用于更新设置文件运行该呼吁,不消重启即可举办设置文件更新。
- Reload @@sqlstat用来封锁和开启SQL监控说明。
- Show @@database呼吁用来表现MyCat数据库列表,运行功效对应schema.xml设置文件的schema子节点。
- Show @@datanode用来表现MyCat数据节点,运行功效对应schema.xml设置文件的dataNode节点。
- Show @@heartbeat用于陈诉心跳状态。
- Show @@connection用来获取MyCat的前端毗连状态。
- Kill @@connection id,id,id 用来封锁毗连。
- Show @@ cache用来查察缓存。
- Show @@datasource 用来查察数据源状态,假如设置了主从或多主,则可以切换。
- Switch @@ datasource name:index 用于切换数据源。
- Show @@syslog limit 用于表现体系日记。
- Show @@sql 表现在MyCat中执行过的语句。
- Show @@shl.show 表现慢SQL语句。
- Show @@sql.sum 表现SQL语句的整体执行环境、读写比例等。
8.2 范围性
delete操纵不支持没有主键的表。没有主键的表在差异节点的次序差异,假如执行 select ...limit...,则将呈现差异的功效集。
不支持XA事宜,在提交上也许回滚。
因为集群是乐观的并发控件,事宜commit也许在该阶段中止,以是假若有两个事宜向集群中的差异节点的统一行写入并提交,则失败的节点将中止。对付集群级此外中止,集群返回死锁错误。
整个集群的写入吞吐量由最弱的节点限定,假若有一个节点变得迟钝,那么整个集群将变得迟钝。
集群内部凭证id自增添机制写入数据,好比集群中有三台也许是3,6,9这样的递增。
8.3 与Sharding-JDBC比拟Sharding-JDBC
MyCat是一此中间件的第三方应用,sharding-jdbc是一个jar包。 由于MyCat是单独陈设,以是行使MyCat就像是会见数据库一样,而sharding-jdbc的逻辑都是必要在工程里写的。
假如只是单独应用可以行使轻量级的Sharding-JDBC,假如多个处事都必要操纵数据库则行使MyCat更吻合。由于用Sharding-JDBC必要在每一个工程里边都设置上响应的分片等逻辑,而MyCat只必要设置一份单独陈设。
【编辑保举】
- 一文看懂MySQL数据库LnnoDB瓦解规复机制
- 超具体的MySQL数据库InnoDB瓦解规复机制总结
- NoSQL毕竟是什么?相识为什么NoSQL数据库不是传统数据库的敌手
- 关于MySQL数据库整理binlog日记呼吁总结
- 假如你能口试的时辰能答复这些MySQL数据库题目,月薪2万不是题目
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0 (编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|