通过慢查询,可以发现搜索时间较长的语句还有没有使用索引的语句,来发现mysql的瓶颈,进行优化
show variables like‘’ 可以查询mysql各种配置信息
show global status 各种服务器运行状态信息
mysqladmin variables -u -p 也可以查询系统信息
mysqladmin extended-status -u -p 状态信息
----------------------------------------------------------------------
配置慢查询
my.cnf配置文件中写入
slow_query_log = 1 0关闭 1开启
slow_query_log = /******************slow-query.log 慢查询日志位置,默认 mysql/data
long_query_time = 1 秒为单位,设置时间,超过记录
log_queries_not_using_indexes 记录没有使用索引的查询语句
这是永久生效需要重启mysql
set global slow_query_log = on; mysql中临时开启
set long_query_time = 1
临时开启慢查询
----------------------------------------------------------------------
慢查询日志可以直接使用vi cat 等命令查看,但是因为可能记录的命令过多,使用mysqldumpslow命令会更方便查看
mysqldumpslow -a -s at -r 日志文件 这个命令会把重复多次的查询计数,count: 后面是次数
---------------------------------------------------------------------------
profiling 分析
会记录执行的语句,然后记录语句执行中的各种信息,因为启动了会占用一部分资源,一般就是临时用一下
set profiling = 1 0关 1开
开启以后执行的各种命令都会记录,
show profiles \G 查看记录的命令
show profile for query 第几条命令 详细信息,会有CPU 内存 磁盘IO等等更详细的数据