《Mycat分布式数据库架构》之Mycat管理

本文详细介绍了Mycat的管理端口配置,包括Reload命令和Show命令的使用,如数据库列表、数据节点、心跳状态和连接管理等。此外,还讲解了Mycat-Web的安装配置过程,包括JDK环境、Zookeeper、mycat-web的下载与启动,以及如何通过mycat-web对Mycat进行可视化管理。

前文回顾:
《Mycat分布式数据库架构》之原理及架构
《Mycat分布式数据库架构》之搭建详解
《Mycat分布式数据库架构》之配置详解
《Mycat分布式数据库架构》之数据切分和读写分离
《Mycat分布式数据库架构》之故障切换
《Mycat分布式数据库架构》之数据切分实战
《Mycat分布式数据库架构》之全局自增ID
《Mycat分布式数据库架构》之ER分片
《Mycat分布式数据库架构》之高可用集群



1、Mycat管理端口

在server.xml文件中可配置mycat的管理端口,默认为9066,管理用户也就是server.xml中配置的用户,如下

<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
    <system>
        <property name="serverPort">8066</property>
        <property name="managerPort">9066</property>
        <property name="nonePasswordLogin">0</property>
        <property name="bindIp">0.0.0.0</property>
        <property name="frontWriteQueueSize">2048</property>
        <property name="charset">utf8</property>
        <property name="txIsolation">2</property>
        <property name="processors">8</property>
        <property name="idleTimeout">1800000</property>
        <property name="sqlExecuteTimeout">300</property>
        <property name="usesqlstat">0</property>
        <property name="useGlobleTableCheck">0</property>
        <property name="sequnceHandlerType">0</property>
        <property name="defaultMaxLimit">100</property>
        <property name="maxPacketSize">104857600</property>
    </system>
    <user name="yxc">
        <property name="password">yxc123456</property>
        <property name="schemas">mycats</property>
    </user>
    <user name="user">
        <property name="password">user</property>
        <property name="schemas">mycats</property>
        <property name="readOnly">true</property>
    </user>
</mycat:server>

Mycat 提供了类似数据库的管理监控方式,可以通过MySQL命令行登陆管理端口9066执行相应的SQL语句进行管理,可以通过JDBC的方式进行远程连接管理,使用 MySQL 命令行登陆示例如下:

mysql -h192.168.157.130 -uyxc -p123456 -P9066

-h:参数后面是主机IP
-u:是mycat配置的逻辑库的用户
-p:是mycat配置的逻辑库的用户密码
-P:是端口号

可以使用 show @@help 查询所有命令


1.1 Reload 命令

• reload @@config
该命令用于更新 schema.xml 配置文件,例如更新 schema.xml 文件后在命令窗口输入该命令,不用重启即可进行配置文件的更新,示例如下:

在这里插入图片描述

• reload @@config_all
该命令用于更新所有配置文件,不用重启即可进行配置文件的更新,示例如下:

在这里插入图片描述


1.2 Show 命令

• show @@database
该命令用于查询显示 Mycat 的数据库列表(逻辑库),示例如下:

在这里插入图片描述

• show @@datanode
该命令用于查询显示 Mycat 数据节点列表,还可以通过 show @@datanode where schema = ? 的方式查询指定逻辑库(区分大小写)的数据节点,示例如下:

在这里插入图片描述
-name:表示数据节点的名称
datahost:表示对应的数据主机
active:表示活动连接
idle:表示空闲连接
size:表示最大连接数量

• show @@heartbeat
该命令用于报告心跳状态,示例如下:

在这里插入图片描述

name:数据主机名称
type:表示数据库类型
host:表示主机地址
rs_code:表示心跳状态(0:INIT_STATUS 表示初始化状态,1:OK_STATUS 表示正常状态,-1:ERROR_STATUS 表示连接出错,-2:TIMEOUT_STATUS 表示连接超时)。
若节点发生故障,会连续进行默认5个周期的检测,心跳连续失败后会变成 -1 ,节点故障确认,然后可能发生切换。

• show @@connection
该命令用于获取 Mycat 前端的连接状态,示例如下:

在这里插入图片描述
如果需要关闭连接,可以使用 kill @@connection id,id,id,… ,示例如下:
在这里插入图片描述

• show @@backend
查询后端连接(Mycat 连接实际数据库)状态,示例如下:
在这里插入图片描述

• show @@cache
用于查看 Mycat 缓存使用情况,示例如下:

在这里插入图片描述

SQLRouteCache:SQL语句路由缓存
TableID2DataNodeCache.TESTDB_ORDERS:缓存表主键与分片的对应关系
ER_SQL2PARENTID:缓存ER分片中子表与父表的关系

• show @@datasource
查看数据源的状态,如果配置了主从或者多主,则可以切换,示例如下:
在这里插入图片描述
如果需要切换数据源,可以使用 switch @@datasource name:index 来切换,示例如下:
在这里插入图片描述

name:是 schema 配置文件中,配置的 dataNode 中的 name值
index:是 schema 配置文件中,配置的 dataNode 的 dataHost 的 writeHost 的索引,按照从上往下的配置顺序,索引从 0 开始

• show @@sql
查看在 Mycat 中执行过的SQL语句,需要确认 server.xml 配置文件中的 1 ,示例如下:

在这里插入图片描述

• show @@sql.slow
查看在 Mycat 中执行的比较慢的 SQL 语句,使用 reload @@sqlslow=? 来设置慢的阈值,如果需要在查询后,移除本次结果不在下次查询显示,可以在命令后 增加标识,show @@sql.slow true,示例如下:

在这里插入图片描述
设置执行SQL语句慢的阈值,示例如下:
在这里插入图片描述

• show @@sql.sum
显示SQL语句的整体执行情况、读写比例等,示例如下:
在这里插入图片描述


2、Mycat-Web

除了使用mysql客户端连接到mycat管理端口来对mycat进行管理之外,还可以使用另外一个开源的管理工具mycat-web来对mycat进行管理。

2.1 安装jdk运行环境

Mycat-web运行也需要java运行环境,因此需要安装jdk环境,查看当前仓库的Java版本(yum -y list java*),如下图所示,建议安装当前仓库的1.8版本。

在这里插入图片描述

配置好环境变量后通过java -version查看当前安装完成的Java版本,如下图所示。

在这里插入图片描述


2.2 安装zookeeper

Zookeeper安装参考前文。


2.3 安装配置mycat-web

从mycat官网下载mycat-web,如下图所示,点击更多下载,找到mycat-web。

在这里插入图片描述

选择你所需要的版本进行下载,如下图所示。

在这里插入图片描述

解压

tar zxf Mycat-web-1.0-SNAPSHOT-20170102153329-linux.tar.gz

在这里插入图片描述

修改mycat.properties配置文件

[root@localhost mycat-web]# ls
etc  lib  mycat-web  readme.txt  start.jar  start.sh
[root@localhost mycat-web]# cd mycat-web/
[root@localhost mycat-web]# ls
404.html  500.html  index2.html  META-INF  monitor.js  page  resources  static  version.txt  WEB-INF
[root@localhost mycat-web]# cd WEB-INF/
[root@localhost WEB-INF]# ls
classes  db  jrdsconf  lib  web.xml
[root@localhost WEB-INF]# cd classes/
[root@localhost classes]# ls
com  jdbc.properties  log4j2.xml  mybatis  mycat.properties  org  spring
[root@localhost classes]# vi mycat.properties

将zookeeper的地址改为实际安装了zookeeper的地址,本节点未安装,所以不能使用localhost,如下修改。

show.period=3000000
zookeeper=192.168.157.129:2181

mycat_warn_mail=[{"cc"\:"sohudo@mycat.io","index"\:1,"mangerPort"\:"465","smtpHost"\:"smtp.139.com","smtpPassword"\:"123456","smtpProtocol"\:"smtp","smtpUser"\:"agile_louie@139.com","to"\:"9183838@qq.com"}]
##sql\u4E0A\u7EBF\u76F8\u5173\u914D\u7F6E
sqlonline.server=192.168.80.128
sqlonline.user=root
sqlonline.passwd=123456

2.4 启动mycat-web
cd mycat-web/
./start.sh

启动之后即可访问 http://192.168.157.132:8082/mycat/。



更多技术干货,请持续关注程序员大佬超。
原创不易,转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员大佬超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值