引言mycat
从定义和分类来看,它是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。
MyCat发展到目前的版本,已经不是一个单纯的MySQL代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL等主流数据库,也支持MongoDB这种新型NoSQL方式的存储,未来还会支持更多类型的存储。而在最终用户看来,无论是那种存储方式,在MyCat里,都是一个传统的数据库表,支持标准的SQL语句进行数据的操作,这样一来,对前端业务系统来说,可以大幅降低开发难度,提升开发速度
MyCAT-WEB就是基于mycat的一个性能监控工具,方便大家更有效的使用mycat管理mycat监控mycat,让大家的mycat工作更加高效。
1,下载
2,zookpeer安装
下载
安装: tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local/ cd /usr/local/zookeeper-3.4.6/ cd conf cp zoo_sample.cfg zoo.cfg 启动: cd /usr/local/zookeeper-3.4.6/bin/ ./zkServer.sh start
|
3,mycat-web安装
下载:
1.安装JDK 要求jdk1.7+ 2.启动 windows启动 启动start.bat linux启动 启动start.sh 3.访问地址:http://localhost:8082/mycat |
tar -xvf Mycat-web-1.0-SNAPSHOT-20160331220346-linux.tar.gz -C /usr/local/ 修改zookeeper地址: cd /usr/local/mycat-web/mycat-web/WEB-INF/classes vim mycat.properties zookeeper=127.0.0.1:2181 启动: cd /usr/local/mycat-web/ ./start.sh & |
访问地址是:http://192.168.121.52:8082/mycat/
PS:要先启动zookeeper然后再启动mycat-web,检查zookeeper和mycat-web是否启动:
[root@oracle_standby mycat-web]# netstat -ntpl |grep 8082 tcp 0 0 :::8082 :::* LISTEN 18288/java [root@oracle_standby mycat-web]# [root@oracle_standby mycat-web]# netstat -ntpl |grep 2181 tcp 0 0 :::2181 :::* LISTEN 18251/java [root@oracle_standby mycat-web]# |
如果有端口冲突,请修改jetty,里面有个port端口设置(默认8082):
4,打开mycat-web窗口
输入网址:http://192.168.121.52:8082/mycat/
01. png
5,配置mycat服务
配置见02.png,
配置成功后见03.png
6,SQL语法检测功能还未完善
点击“SQL-上线”下面的“SQL语法检测”,然后输入一个错误的insert插入sql语句insert into person(id,name)values('a','a');点击下面的“语法检测”,界面没有返回任何结果,如10.png所示:
7,mycat服务监控
在mycat后台压测千万insert,如下:
./test_stand_insert_perf.sh jdbc:mysql://192.168.121.52:8066/TESTDB test test 10 file=mydata-create.sql
|
然后去mycat-web界面的服务监控看性能曲线,可以看到mycat tps分析、内存分析、连接分析,如11.png所示:
PS:小技巧如何实时看监控数据太少,就可以选择左下角的历史查询,选择1小时、2小时、3小时会出来更多的数据。
8,SQL-监控
SQL表分析,如801.png:
高频SQL分析,如图802.png
SQL解析,如图803.png