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
。
访问
访问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
监控到的数据信息。