? 作者:微枫
Micromaple? 主页:欢迎关注Micromaple
? 简介:Java程序员、后端全栈工程师
? 点赞?➕收藏⭐➕留言? 您的支持就是我前进的动力???
大家好,我是微枫
Micromaple,本文给大家介绍Mycat的监控工具Mycat-web,希望大家多多支持,感谢~
下面是我的Mycat系列专栏(持续更新ing),有喜欢的小伙伴欢迎订阅学习呀~? 深入学习Mycat
✨ Mycat系列专栏:点我学习
? Mycat主从搭建、读写分离:点我学习
? Mycat实现分库分表:点我学习
? Mycat实现单库水平分表、按月分表:点我学习
? Mycat高可用方案-HAProxy+Keepalived:点我学习
? Mycat安全设置:点我学习
文章目录
一、Mycat-web
1.1、简介
Mycat-web 是 Mycat 可视化运维的管理和监控平台,弥补了 Mycat 在监控上的空白。帮 Mycat 分担统计任务和配置管理任务。Mycat-web 引入了 ZooKeeper 作为配置中心,可以管理多个节点。
Mycat-web 主要管理和监控 Mycat 的流量、连接、活动线程和内存等,具备 IP 白名单、邮件告警等模块,还可以统计 SQL 并分析慢 SQL 和高频 SQL 等。为优化 SQL 提供依据。

1.2、Zookeeper 安装
官网:
https://zookeeper.apache.org/
安装步骤:
- 下载安装包,本文使用
3.4.11# 将程序放在 /usr/local/apps 下,如果没有则先新建 mkdir /usr/local/apps。(当然也可以放在其他目录下) cd /usr/local/apps wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz - 解压
tar -zxvf zookeeper-3.4.11.tar.gz - 进入
ZooKeeper解压后的conf配置目录,复制配置文件并改名cd /usr/local/apps/zookeeper-3.4.11/conf cp zoo_sample.cfg zoo.cfg - 进入
ZooKeeper的bin命令目录,运行启动命令/usr/local/apps/zookeeper-3.4.11/bin ./zkServer.sh start执行后如下:
root@ubuntu:/usr/local/apps/zookeeper-3.4.11/bin# ./zkServer.sh start ZooKeeper JMX enabled by default Using config: /usr/local/apps/zookeeper-3.4.11/bin/../conf/zoo.cfg Starting zookeeper ... STARTED ZooKeeper服务默认端口为2181,查看服务是否已经启动netstat -ant | grep 2181root@ubuntu:/usr/local/apps/zookeeper-3.4.11/bin# netstat -ant | grep 2181 tcp6 0 0 :::2181 :::* LISTEN
1.3、Mycat-web 安装
安装步骤:
- 下载安装包
# 将程序放在 /usr/local/apps 下,如果没有则先新建 mkdir /usr/local/apps cd /usr/local/apps wget http://dl.mycat.org.cn/mycat-web-1.0/Mycat-web-1.0-SNAPSHOT-329-linux.tar.gz - 解压
tar -zxvf Mycat-web-1.0-SNAPSHOT-329-linux.tar.gz - 进入
mycat-web的目录下运行启动命令cd /usr/local/apps/mycat-web ./start.sh & Mycat-web服务默认端口为8082,查看服务已经启动netstat -ant | grep 8082- 浏览器访问
Mycat-web服务http://IP:8082/mycat
1.4、Mycat-web 配置
配置步骤如下:
- 配置
Zookeeper注册中心,如下:

点击保存后,程序会自动的去更新mycat.properties配置文件的zookeeper配置,文件地址在/usr/local/apps/mycat-web/mycat-web/WEB-INF/classes# 进入到 mycat-web 的 classes 目录下 cd /usr/local/apps/mycat-web/mycat-web/WEB-INF/classes vi mycat.propertiesmycat.properties配置文件内容如下:#ZK CONFIG #Fri Jul 08 20:50:05 CST 2022 show.period= sqlonline.passwd= zookeeper=192.168.110.145\:2181 sqlonline.user=root sqlonline.server=192.168.80.128 mycat_warn_mail=[{"cc"\:"","index"\:1,"mangerPort"\:"465","smtpHost"\:"smtp.139.com","smtpPassword"\:"","smtpProtocol"\:"smtp","smtpUser"\:"","to"\:"@.com"}]我们可以看到
zookeeper节点的IP变成了我们刚刚在界面上更改的IP,zookeeper节点的IP默认值是localhost。 Mycat配置,如下:

Mycat默认管理端口为:9066- 配置好后,可以在
Mycat-监控菜单中查看Mycat的各种监控,比如:Mycat性能监控、JVM性能监控、主从同步监控等
- 可以在
SQL-监控菜单中查看SQL统计、SQL监控、慢SQL统计等功能
- 也可以检测一些不符合
Mycat的SQL语法
1.5、Mycat-web 数据库配置
1.5.1、Mycat-web 默认数据库
Mycat-web 默认是使用 SQLite数据库,此数据库在 /usr/local/apps/mycat-web/mycat-web/WEB-INF/db,名字为 mycat-web.db。
root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/db# cd /usr/local/apps/mycat-web/mycat-web/WEB-INF/db root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/db# ll total 96 drwxr-xr-x 2 root root 4096 Jul 8 21:57 ./ drwxr-xr-x 6 root root 4096 Jul 8 20:19 ../ -rw-r--r-- 1 root root 86016 Jul 8 21:57 mycat-web.db -rw-r--r-- 1 root root 3889 Apr 25 2016 mycat-web.sql root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/db#
Mycat-web 的数据库配置文件在 /usr/local/apps/mycat-web/mycat-web/WEB-INF/classes/jdbc.properties
root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/classes# cd /usr/local/apps/mycat-web/mycat-web/WEB-INF/classes root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/classes# cat jdbc.properties # #Mon Jan 16 15:37:36 CST 2012 jdbc.url=jdbc:sqlite:${webapp.root}/WEB-INF/db/mycat-web.db jdbc.driverClassName=org.sqlite.JDBC jdbc.username= jdbc.password= jdbc.maxActive=50 jdbc.initialSize=20 jdbc.maxWait= jdbc.minIdle=20 #jdbc.url=jdbc:mysql://localhost:3306/mycat-web #jdbc.driverClassName=com.mysql.jdbc.Driver #jdbc.username=root #jdbc.password=root@ubuntu:/usr/local/apps/mycat-web/mycat-web/WEB-INF/classes#
根据配置文件,我们可以将数据库的连接改为 MySQL 的连接方式。它的初始化 SQL 脚本在 /usr/local/apps/mycat-web/mycat-web/WEB-INF/dbmycat-web.sql
由此,我们可以通过这个 SQL 文件初始化数据库,可将 Mycat-web 的数据库配置方式改成 MySQL,更加的方便我们去控制 Mycat-web 的数据库。
1.5.2、Mycat-web 默认端口
Mycat-web 默认端口为 8082,在配置文件 /usr/local/apps/mycat-web/etc/jetty.xml 中配置。
我们查看该配置文件可以发现Mycat-web的默认端口 port,以及请求地址 contextPath。
vi /usr/local/apps/mycat-web/etc/jetty.xml
DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configure id="Server" class="org.mortbay.jetty.Server"> <Set name="ThreadPool"> <New class="org.mortbay.thread.QueuedThreadPool"> <Set name="minThreads">10
Set> <Set name="maxThreads">200
Set> <Set name="lowThreads">20
Set> <Set name="SpawnOrShrinkAt">2
Set>
New>
Set> <Call name="addConnector"> <Arg> <New class="org.mortbay.jetty.nio.SelectChannelConnector"> <Set name="host"><SystemProperty name="jetty.host" default="0.0.0.0"/>
Set> <Set name="port"><SystemProperty name="jetty.port" default="8082"/>
Set> <Set name="maxIdleTime">30000
Set> <Set name="Acceptors">2
Set> <Set name="statsOn">false
Set> <Set name="confidentialPort">8444
Set> <Set name="lowResourcesConnections">5000
Set> <Set name="lowResourcesMaxIdleTime">5000
Set>
New>
Arg>
Call> <Set name="handler"> <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection"> <Set name="handlers"> <Array type="org.mortbay.jetty.Handler"> <Item> <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>
Item> <Item> <New class="org.mortbay.jetty.webapp.WebAppContext"> <Set name="contextPath">/mycat
Set> <Set name="war">./mycat-web
Set>
New>
Item>
Array>
Set>
New>
Set>
<Set name="stopAtShutdown">true
Set> <Set name="sendServerVersion">true
Set> <Set name="sendDateHeader">true
Set> <Set name="gracefulShutdown">1000
Set>
Configure>
我们可以通过修改 port 来更改访问端口。
读到这里,想必你对
Mycat监控工具Mycat-web的使用和认识清晰了不少,别忘了三连支持博主呀,我是微枫Micromaple,期待你的关注???
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210262.html原文链接:https://javaforall.net
