查看SQL执行记录(MySQL5.7)


show profile

  1. 查看profiling设置

    SHOW GLOBAL VARIABLES LIKE "profiling%"
    

  2. 设置profiling开启

    SET GLOBAL profiling = ON
    

  3. 查看最近执行的sql

    SHOW PROFILES
    

    记住Query_ID,可以查看这条sql执行详情。

  4. 查看一条sql的详情

    SHOW PROFILE cpu,block io for 34;
    

    cpu和block io是参数,查看这两项参数的执行情况,下面是全部参数。

    然后看一下执行的结果:

    可以看到SQL执行的全部流程。

全局查询日志

  1. 查看全局查询日志的设置

    SHOW GLOBAL VARIABLES LIKE "general_log%"
    

  2. 设置全局查询日志的参数

    SET GLOBAL general_log = ON
    

    下面是设置日志的保存位置,你还可以设置保存为数据表;

    SET GLOBAL log_output = "TABLE"
    SHOW GLOBAL VARIABLES LIKE "log_output%"
    

  3. 查询所有执行的SQL

    如果是文件的话就根据general_log_file参数打开文件查看。

    如果设置的是table的话,日志被保存在MySQL数据库默认的mysql数据库general_log表中。

    select * from mysql.general_log
    

    全局查询日志是排查问题的,一定不要在上线的项目中开启。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM