SQL执行频率
通过一下命令可查看当前数据库的 instert update delete select的访问频次
SHOW GLOBAL STATUS LIKE 'Com_______'
慢查询日志
慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:秒,默认10秒)的所有sql语句的日志
MySQL 的慢查询日志默认没有开启,需要在MySQL的配置文件(/etc/my.cnf)中配置
#开启MySQL慢日志查询开关
show_query_log=1
#设置慢日志的时间为2秒,SQL语句执行时间超过2秒,就会视为慢查询,记录慢查询日志
long_query_time=2
设置完毕后重启服务进行测试
profile
show profile 能够在做sql优化时帮助我们了解时间都花费在哪里并且通过having_profiling参数,能够看到当前MySQL是否支持profile操作
#profile操作
SELECT @@have_profiling;
#默认profiling是关闭的,可以通过set语句在session/global开启profiling
SET profiling=1
#查看每一条SQL的耗时基本情况
show profiles
#查看指定query_id的SQL语句各个阶段的耗时情况
show profile cpu for query query_id
explain
explain或者desc命令可以获取MySQL如何执行sel