Mycat管理
Mycat 提供了类似数据库的管理监控方式,可以通过 mycat 端口 9066 执行相应的 SQL 语句进行管理,
可以可以通过 navicat 软件进行远程连接管理,再使用 MySQL 命令行界面登陆示例如下:
命令行下进行登录管理命令:
# mysql -h192.168.1.111 -umycatuser -P9066 -pmima
-h:参数后面是主机IP
-u:是mycat配置的逻辑库的用户
-p:是mycat配置的逻辑库的用户密码
-P:是端口号
-d:是逻辑库名称
可以使用 show @@help 查询所有命令
Reload 命令
reload @@config
该命令用于更新 schema.xml 配置文件,例如更新 schema.xml 文件后在命令窗口输入该命令,不用重启即可进行配置文件的更新,示例如下:
reload @@config_all
该命令用于更新所有配置文件,不用重启即可进行配置文件的更新,示例如下:
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 配置文件中的 <property name="useSqlStat">1</property> ,示例如下:
show @@sql.slow
查看在 Mycat 中执行的比较慢的 SQL 语句,使用 reload @@sqlslow=? 来设置慢的阈值,如果需要在查询后,移除本次结果不在下次查询显示,可以在命令后 增加标识,show @@sql.slow true,示例如下:
设置执行SQL语句慢的阈值,示例如下:
show @@sql.sum
显示SQL语句的整体执行情况、读写比例等,示例如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?