• Mysql数据库慢sql抓取与分析


    1、修改mysql配置开启慢sql查询

    修改配置文件/etc/my.cnf

    1. slow_query_log=ON
    2. slow_query_log_file=/usr/local/mysql/data/slow.log
    3. long_query_time=5

    说明:long_query_time这个时间大家可以设置为1,不放过任何超过1秒的查询。 

    2、检查设置

    show VARIABLES like '%slow_query_log%';
    show VARIABLES like '%long_query_time%';

     

     

     3、安装安装pt_query_digest

    wget percona.com/get/pt-query-digest
    mv pt-query-digest /usr/bin/
    chmod +x /usr/bin/pt-query-digest

    安装与Perl相关的模块

    yum  -y  install 'perl(Data::Dumper)'
    yum  -y  install  perl-Digest-MD5
    yum  -y  install  perl-DBI
    yum  -y  install  perl-DBD-MySQL

    4、分析慢sql日志文件

    #全部

    pt-query-digest slow.log > pt_slow_sql_report.log

    #近30天的

    pt-query-digest --since=30d mysql.log  > pt_slow_sql_report.rtf

     以下是分析结果截取示例,分析结果文档会给出每个慢sql的详细信息。

    1. # 570.6s user time, 47s system time, 88.15M rss, 252.14M vsz
    2. # Current date: Wed Jun 29 17:33:45 2022
    3. # Hostname: izzm08qanynb5doqrznbeyz
    4. # Files: mysql.log
    5. # Overall: 722.25k total, 212 unique, 0.28 QPS, 2.88x concurrency ________
    6. # Time range: 2022-05-30T17:25:05 to 2022-06-29T09:20:58
    7. # Attribute total min max avg 95% stddev median
    8. # ============ ======= ======= ======= ======= ======= ======= =======
    9. # Exec time 7376702s 5s 122s 10s 24s 7s 7s
    10. # Lock time 3079s 0 56s 4ms 204us 437ms 84us
    11. # Rows sent 15.08M 0 32.56k 21.89 0.99 517.96 0.99
    12. # Rows examine 3.11T 0 32.05M 4.52M 6.94M 2.51M 5.99M
    13. # Query size 542.74M 27 5.86k 787.96 2.27k 907.02 299.03

  • 相关阅读:
    关于 re.sub 部分替换的解决办法
    JavaWeb---BootStrap
    SuperFarm 和 NFT.NYC 定制款赛车将开启兑换!
    Python基础入门篇【37】-异常:finally关键字的使用、自定义异常类型及自定义异常抛出
    [BJDCTF2020]Cookie is so stable
    Canal1.1.6安装部署
    shiro笔记
    画CMB天图使用Planck配色方案
    MDM属性跳转功能说明
    Pycharm中添加Python库指南
  • 原文地址:https://blog.csdn.net/jiahao1186/article/details/125538797