Chinaunix首页 | 论坛 | 博客
  • 博客访问: 275414
  • 博文数量: 159
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1619
  • 用 户 组: 普通用户
  • 注册时间: 2016-01-10 19:58
文章分类

全部博文(159)

分类: Web开发

2016-11-10 23:32:39

前言

在开发中,高效能的程序 也包括 高效能的查询,所以优化SQL也是程序员必要技能之一。要优化就必须要有慢日志记录才可以知道哪些查询慢,然后反向去修改

慢日志设置方式

  • 写入文件

  • 写入数据库

实践操作

方式一:写入文件

编辑my.conf 中修改 log_slow_queries 的日志地址

$ cd /etc/mysql
$ cat my.cnf |grep slow 
log_slow_queries	= /data/logs/mysql/mysql-slow.log
$ sudo /etc/init.d/mysql restart

简单验证

$ mysql -uroot -p
mysql> show variables like '%slow_query_log%';
+---------------------+---------------------------------+
| Variable_name       | Value                           |
+---------------------+---------------------------------+
| slow_query_log      | ON                              |
| slow_query_log_file | /data/logs/mysql/mysql-slow.log |
+---------------------+---------------------------------+
2 rows in set (0.00 sec)

$ tail -f /data/logs/mysql/mysql-slow.log
# Time: 161110 23:20:22
# User@Host: root[root] @ localhost []
# Query_time: 3.007048  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
SET timestamp=1478791222;
select sleep(3);

方式二:写入数据库

先查看目前日志输出方式

mysql> show variables like '%log_output%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | FILE  |
+---------------+-------+
1 row in set (0.00 sec)

设置输出方式为FILE,TABLE

mysql> set global log_output='FILE,TABLE';
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%log_output%';
+---------------+------------+
| Variable_name | Value      |
+---------------+------------+
| log_output    | FILE,TABLE |
+---------------+------------+
1 row in set (0.00 sec)

mysql> select count(*) from mysql.slow_log;
+----------+
| count(*) |
+----------+
|        2 |
+----------+
1 row in set (0.00 sec)

600

备注: log_output 参数设定日志文件的输出,可选值为 TABLE, FILE ,NONE;  "TABLE" 意思为设定日志分别记录到 mysql 库的 general_log 和 slow_log 表中; "FILE" 意思为记录日志到操作系统的文件中, "NONE" 意思为取消日志记录。

参考资料

  1. http://dev.mysql.com/doc/refman/5.6/en/slow-query-log.html    

原文地址:标签:               

智能推荐

阅读(1423) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~