`SHOW PROCESSLIST` 监控
实时查看当前执行的查询,结合 `LIKE` 子句筛选关键词:
sql
SHOW PROCESSLIST WHERE INFO LIKE '%your_keyword%';
2、第三方工具与平台
MySQL Enterprise Monitor(商业工具)
提供查询摘要、热点表分析、索引建议等功能,可自定义关键词过滤规则。
官网:[Oracle MySQL Enterprise Monitor](https://www.oracle.com/mysql/enterprise-monitor/)
Prometheus + Grafana(开源方案)
配合 `mysqld_exporter` 收集指标,通过 Grafana 面板展示关键词相关的查询统计(如包含特定表名的查询次数)。
示例查询:
promql
sum by (query) (mysql_global_status_queries{db=your_db})
cnx = mysql.connector.connect(user='user', password='pass',
host='127.0.0.1',
database='information_schema')
cursor = cnx.cursor()
query =
SELECT COUNT(*), TRIM(both '' FROM SUBSTRING_INDEX(SUBSTRING_INDEX(SQL_TEXT, '', 3), '', -1)) AS keyword
FROM PROCESSLIST
WHERE SQL_TEXT LIKE '%SELECT%' AND SQL_TEXT LIKE '%your_keyword%'
GROUP BY keyword;
cursor.execute(query)
for (count, keyword) in cursor:
print(fKeyword: {keyword}, Count: {count})
cnx.close()