南大通用GBase8a 显示集群正在跑的SQL进程show [full | detail] processlist

GBase 8a数据库集群,提供了show processlist命令,让管理员查看当前正在运行的SQL。包括发起IP, 用户,开始时间,当前状态,具体SQL等内容。

参考

GBase 8a进程信息show processlist里的Host内容显示百分号%的原因
GBase 8a数据库集群show processlist内command数值含义说明
GBase 8a数据库集群show processlist中state不同状态含义说明

作用

显示当前正在连接的SQL和正在执行的SQL。其中full参数是显示完整的SQL,否则只显示部分。

该工具显示的是当前连接节点的进程信息,每个节点是互相独立的。如需查看整个集群的SQL,请参考 GBase 8a集群查看所有节点正在运行的SQL 限86版本集群,85版本尚没有方案。

存储过程

存储过程执行过程中,只能看到内部的每个SQL,看不到call语句了。

使用方法

show processlist;

show full processlist; 包含了完整的SQL

show detail processlist; 包含了锁

如上3个,第一个适合日常巡检,第二个适合查看某个具体的SQL,第三个适合排查多个SQL时,锁争抢卡住等情况。

使用样例

各列含义

ID 是连接编号

Tid 线程号,对应LWP(比如pstack里)

user 连接登录的用户

host 连接登录的主机和端口

db 默认连接的数据库

command 当前执行的命令。其中Sleep是执行完了在休息等待,Daemon是后台进程不用理睬,Query是在运行的。

Time 是当前command运行的时间,单位秒。重要。

state 是一个SQL当前运行状态,一般不用管。

Info 执行的SQL。重要。

Lock 已经持有的锁

Wait 等待中的锁