码迷,mamicode.com
首页 > 数据库 > 详细

mysql慢查询的配置及mysql进程查看

时间:2016-05-04 19:15:44      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:mysql慢查询

一.命令操作

a)     数据库查询当前连接:showprocesslist;&&show status;

b)    数据库查看状态:status;

c)     查看cpu占用:top

d)    刷新报告内存使用状况:free–b –s5

free命令:

total:总计物理内存的大小。


       used:已使用多大。


    free:可用有多少。


       Shared:多个进程共享的内存总额。


       Buffers/cached:磁盘缓存的大小。


       第三行(-/+ buffers/cached):


       used:已使用多大。


       free:可用有多少。

二.数据库

MySQL慢查询配置

1. 慢查询有什么用?

它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化.

2. 开启慢查询

查看MYSQL服务器的慢查询状态是否开启.执行如下命令:

show variables like ‘%slow%‘;

当前log_slow_queries状态为OFF, 说明当前并没有开启慢查询.

开启慢查询=:

[mysqld]中添加如下信息:

[mysqld]

log-slow-queries="/data/MySQLdata/mysql-slow.log"

long_query_time = 4  (单位:s)

log-queries-not-using-indexes

log-slow-queries: 代表MYSQL慢查询的日志存储目录, 此目录文件一定要有写权限;

long_query_time:
最长执行时间. (如图,MSYQL将记录下所有执行时间超过2条的SQL语句, 此处为测试时间, 时间不应太小最好在5-10秒之内, 当然可以根据自己的标准而定);

log-queries-not-using-indexes:没有使用到索引的查询也将被记录在日志中

配置好以后重新启动一个MYSQL服务

或者:运行如下命令即可运行慢查询日志

mysql> set global slow_query_log=ON;
Query OK, 0 rows affected (0.03 sec)

mysql> set global slow_launch_time=5;
Query OK, 0 rows affected (0.00 sec)

mysql 5.1.6版本起,slow_query_log slow_launch_time 支持写文件或写数据库表两种方式,并且日志的开启,输出方式的修改,都可以在global级别动态修改。
只需简单通过set global slow_query_log=ON;即可开启慢查询,而不需要重启数据库!


3.
可以直接写到配置文件中  my.cnf

slow_query_log_file=/mysql/log/nagiosdb-slow.log
slow_launch_time=5

可以完成配置!!


mysql慢查询的配置及mysql进程查看

标签:mysql慢查询

原文地址:http://10267776.blog.51cto.com/10257776/1770133

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!