MyCat原理
在 MyCat 中,当执行一条 SQL 语句时, MyCat 需要进行 SQL 解析、分片分析、路由分析、读写分离分析等操作,最终经过一系列的分析决定将当前的SQL 语句到底路由到那几个 ( 或哪一个 ) 节点数据库,数据库将数据执行完毕后,如果有返回的结果,则将结果返回给MyCat ,最终还需要在 MyCat 中进行结果合并、聚合处理、排序处理、分页处理等操作,最终再将结果返回给客户端。
MyCat管理
而在 MyCat 的使用过程中, MyCat 官方也提供了一个管理监控平台 MyCat-Web ( MyCat-eye )。 Mycat-web 是 Mycat 可视化运维的管理和监控平台,弥补了 Mycat 在监控上的空白。帮 Mycat分担统计任务和配置管理任务。Mycat-web 引入了 ZooKeeper 作为配置中心,可以管理多个节点。Mycat-web 主要管理和监控 Mycat 的流量、连接、活动线程和内存等,具备 IP 白名单、邮件告警等模块,还可以统计 SQL 并分析慢 SQL 和高频 SQL 等。为优化 SQL 提供依据。
Mycat默认开通2个端口,可以在server.xml中进行修改。
8066 数据访问端口,即进行 DML 和 DDL 操作。
9066 数据库管理端口,即 mycat 服务管理控制功能,用于管理 mycat 的整个集群状态
连接 MyCat 的管理控制台:
mysql -h 192.168.2.3 -P 9066 -uroot -p123456
命令 | 含义 |
show @@help | 查看 Mycat 管理工具帮助文档 |
show @@version | 查看 Mycat 的版本 |
reload @@config | 重新加载 Mycat 的配置文件 |
show @@datasource | 查看 Mycat 的数据源信息 |
show @@datanode | 查看 MyCat 现有的分片节点信息 |
show @@threadpool | 查看 Mycat 的线程池信息 |
show @@sql | 查看执行的 SQL |
show @@sql.sum | 查看执行的 SQL 统计 |
MyCat-eye
Mycat-web(Mycat-eye) 是对 mycat-server 提供监控服务,功能不局限于对 mycat-server 使用。他通过JDBC 连接对 Mycat 、 Mysql 监控,监控远程服务器 ( 目前仅限于 linux 系统 ) 的 cpu 、内存、网络、磁盘。
安装
Mycat-eye 运行过程中需要依赖 zookeeper ,因此需要先安装 zookeeper 。
安装Zookeeper_无语堵上西楼的博客-CSDN博客
安装Mycat-web_无语堵上西楼的博客-CSDN博客
访问
访问192.168.2.3:8082/mycat
配置
开启 MyCat 的实时统计功能 (server.xml)
<property name="useSqlStat">1</property> <!-- 1为开启实时统计、0为关闭 -->
重启服务
cd /usr/local/mycat/
#启动
bin/mycat start
#停止
bin/mycat stop
在Mycat监控界面配置服务地址
测试
配置好了之后,我们可以通过 MyCat 执行一系列的增删改查的测试,然后过一段时间之后,打开
mycat-eye 的管理界面,查看 mycat-eye 监控到的数据信息。