做一个mysql监控系统应该掌握的一些基本语句
By:Roy.LiuLast updated:2020-04-18
很多系统需要一个MYSQL的监控,查看MYSQL的一些变量配置,吞吐量,连接数,QPS, TPS,慢查询等。当然有一些开源的工具可以满足这些需求,如果是要自己做呢。下面归纳了一些常用监控的SQL语句,要做系统的话,可以通过这些SQL 语句查询出来的数据,自己分析。


-- 获取数据库的方式;
Select SCHEMA_NAME FROM information_schema.SCHEMATA orDER BY SCHEMA_NAME
show databases;
-- 获取数据库对象连接对象
select * from information_schema.`PROCESSLIST` order by DB;
show full processlist;
-- 获取数据库里的对象
select * from INFORMATION_SCHEMA.`TABLES` where TABLE_SCHEMA='yihaomen';
Select TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES Where TABLE_SCHEMA = DATABASE() orDER BY TABLE_NAME;
-- 显示数据库里的表
show tables in mosquitto_status;
-- 获取表里的comumns
select * from information_schema.`COLUMNS` Where TABLE_NAME='sys_dept';
-- 增删改查的数量, 可以自己用来计算TPS, QPS 等
show global status where variable_name in('com_select','com_insert','com_delete','com_update','com_commit','Questions','Threads_connected', 'Threads_running','Uptime');
-- 状态, 与上面的语句类似
SHOW GLOBAL STATUS;
-- 系统配置参数
show global variables;
-- 表结构定义
SHOW FULL COLUMNS FROM sys_dept;
-- 显示索引
SHOW INDEX FROM sys_dept;
-- 显示建库语句
SHOW Create DATABASE yihaomen
-- 显示建表语句
SHOW Create TABLE sys_dept;
-- 显示警告信息
SHOW WARNINGS;
-- 显示ENGINE
SHOW ENGINES;
-- 显示所有编码
SHOW COLLATION;
-- 得到每个表现在存储的大小
select table_name,table_rows,data_length+index_length,
concat(round((data_length+index_length)/1024/1024,2),'MB')
data from information_schema.tables where table_schema='yihaomen'
From:一号门
Previous:积木盒子现形记

COMMENTS