show profile
- 查看profiling设置
SHOW GLOBAL VARIABLES LIKE "profiling%"
- 设置profiling开启
SET GLOBAL profiling = ON
- 查看最近执行的sql
SHOW PROFILES
记住Query_ID,可以查看这条sql执行详情。
- 查看一条sql的详情
SHOW PROFILE cpu,block io for 34;
cpu和block io是参数,查看这两项参数的执行情况,下面是全部参数。
然后看一下执行的结果:
可以看到SQL执行的全部流程。
全局查询日志
- 查看全局查询日志的设置
SHOW GLOBAL VARIABLES LIKE "general_log%"
- 设置全局查询日志的参数
SET GLOBAL general_log = ON
下面是设置日志的保存位置,你还可以设置保存为数据表;
SET GLOBAL log_output = "TABLE"
SHOW GLOBAL VARIABLES LIKE "log_output%"
- 查询所有执行的SQL
如果是文件的话就根据general_log_file参数打开文件查看。
如果设置的是table的话,日志被保存在MySQL数据库默认的mysql数据库general_log表中。
select * from mysql.general_log
全局查询日志是排查问题的,一定不要在上线的项目中开启。