Skip to content

管理端命令说明

Jesse edited this page Aug 29, 2020 · 1 revision

Arkproxy管理端支持的命令,具体支持的命令如下:

命令系列 说明
config help 显示所有的管理端口的命令帮助
/!999999 route to {write|read}/ 中间层的hint使用方式,在每条语句的最前面加上这些信息,就可以主动让ArkProxy将查询路由到写节点或者读节点,适用于对于主从延迟敏感的业务
show backend servers 查看后端配置数据库的状态
show backend routes 查看后台server对应route的状态
show backend connections 查看ArkProxy链接后端的信息
show user config list 可以查看配置user的信息
show config cache 查看当前缓存中的配置信息
show trace status 查看当前中间层关于trace状态的信息
show trace full status 查看当前中间层关于trace状态的更详细的信息
show variables local 显示管理用户的所有variables
config add {read|write} server {servername} [server_attribute [,server_attribute] ...]; server_attribute: {host='string'|port=integer|max_lag=integer|weight=integer} 增加一个server节点,在server_attribute中指定了这个节点的属性。新增节点状态都是OFFLINE,如果需要上线,则将其手动上线。
config write outfile '{filename}' 将当前配置,写出到外部文件中,文件名通过filename来指定。
config set server {servername} online/offline 将指定server上下线
config set user '{username}'@'{userip}' max_user_connections={integer} 在有权限的基础上,可以再限制某用户可连接的最大连接数
config set user '{username}'@'{userip}' databases={dbname} 在有权限的基础上,可以再限制可连接的后端数据库,不过这个功能暂未支持
config delete {integer} 用来删除某个设置项的。integer表示序号,序号需要从show config cache中拿到。
config {delete all|reset} 表示当前未生效的配置缓存都不要了
config reload 将外部配置文件中的内容reload到内存。当手动修改配置文件中之后,可以通过config reload让其生效。
config flush 设置完后,此时所有的配置还未生效,只是缓存到当前会话中的,需要通过config flush命令让其生效。
set global|session variable_name=variable_value; 这个操作的作用和直接在MySQL服务器上执行设置参数变量值是一样的。
config trace sql cache close 关闭trace sql cache
config trace cache close 关闭trace cache
config trace cache create 创建trace cache
config trace sql cache create 创建trace sql cache
show proxy connection status; 显示每个连接buffer的内存信息
show proxy status; 显示proxy总的内存使用情况

show backend servers说明

show backend servers;用来查看后端配置数据库的状态,具体字段含义如下:

column 含义
weight 当前服务器权重
Max_Slave_Lag 当从库超过相应值后就不路由
Routed 是否配置了路由
Comments 备注

show backend routes 说明

show backend routes;命令用来查看后台server对应route的状态,具体字段含义如下:

column 含义
Route_Type Write/read路由

show backend connections 说明

show backend connectins;用来查看Arkproxy链接后端信息,具体字段含义如下:

column 含义
Parent_Id 当前中间层与客户端的thread_id
User 当前程序连接到中间层的原始用户名
Host 当前程序连接到中间层的来源IP地址
MD5_HASH 当前程序连接到中间层被加密用户名,如果与User相同,说明在Host的白名单中(参数proxy_non_encrypted_ips)
Backend_Host 连接的机器
Port 连接到数据库的端口
Db 当前连接的DBname,如果不指定则为空
Route_Type Write
Wait_Timeout 超时断开时间900s
Last_heartbeat 上一次心跳时间
Last_executiion 上一次执行时间
Alived 当前状态
Env_Version 连接中环境变量的版本
Route_count 路由总数量
Slave_Lag 延迟时间
Running_SQL 如果没有运行的SQL表示没有,如果有就是当前正在跑的SQL
Clone this wiki locally