mysql查询执行频率最高_分析统计MySQL general日志 找出查询次数最多的SQL

17270ce95af85a4a2d33846cd5831d99.png

当我们需要优化MySQL查询时,第一想到的是开启慢日志,慢日志可以看到执行消耗超过一定时间的SQL语句和未使用索引的SQL。但如果我们想分析所有SQL查询的分布,即哪类SQL查询次数最多的时候,我们可以开启general log来统计。

开启general log

mysql> show  variables like '%general%';

+——————+————————————-+

| Variable_name | Value |

+——————+————————————-+

| general_log | OFF |

| general_log_file | /usr/local/mysql/data/localhost.log |

+——————+————————————-+

mysql> set global general_log = "ON";

analysis-general-log.py脚本

#!/usr/bin/python

# sort and count mysql general log

# Author: Jason

# Url: www.centos.bz

# Email: admin#centos.bz

# Created: UTC 2015-02-15 17:51:53

import re

import sys

import os

if len(sys.argv) == 2:

logPath = sys.argv[1]

if not os.path.exists(logPath):

print ("file " + logPath + " does not exists.")

sys.exit(1)

else:

print ("Usage: " + sys.argv[0] + " log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值