mysql5.5慢日志设置和查询
mysql> showvariables like '%version%';
+-------------------------+---------------------+
| Variable_name | Value |
+-------------------------+---------------------+
|innodb_version | 5.5.31 |
|protocol_version | 10 |
|slave_type_conversions | |
| version | 5.5.31-log |
|version_comment | Sourcedistribution |
|version_compile_machine | x86_64 |
|version_compile_os | Linux |
+-------------------------+---------------------+
7 rows in set (0.00sec)
开启慢查询日志
在mysql的配置文件my.cnf 中的mysqld下方添加以下参数:
log_slow_queries=ON
long_query_time=1
slow_launch_time=1
slow_query_log=ON
slow_query_log_file=/log/mysql/slow_queries.log
注:
long_query_time=1 表示记录查询时间超过1秒的sql
slow_query_log_file 慢日志文件
slow_launch_time : 表示如果建立线程花费了比这个值更长的时间,slow_launch_threads 计数器将增加
重启mysql后检查结果
mysql> showvariables like '%slow%';
+---------------------+-----------------------------+
| Variable_name | Value |
+---------------------+-----------------------------+
|log_slow_queries | ON |
|slow_launch_time | 1 |
|slow_query_log | ON |
|slow_query_log_file | /log/mysql/slow_queries.log |
+---------------------+-----------------------------+
4 rows in set (0.00sec)
mysql> showvariables like '%long%';
+---------------------------------------------------+----------+
| Variable_name |Value |
+---------------------------------------------------+----------+
|long_query_time | 1.000000 |
|max_long_data_size | 1048576 |
|performance_schema_events_waits_history_long_size | 10000 |
+---------------------------------------------------+----------+
3 rows in set (0.00sec)
测试
mysql> selectsleep(2);
+----------+
| sleep(2) |
+----------+
| 0 |
+----------+
1 row in set (2.00sec)
查看日志是否记录
[root@HE1 /]# tail-f /log/mysql/slow_queries.log
# Time: 16021722:26:54
# User@Host:root[root] @ localhost []
# Query_time:2.000661 Lock_time: 0.000000 Rows_sent:1 Rows_examined: 0
SETtimestamp=1455776814;
select sleep(2);
设置好参数后,以后可通过
mysql>set GLOBAL slow_query_log=1;开启慢日志
mysql> set GLOBAL slow_query_log=0;关闭慢日志
是否记录没用到索引的SQL语句
mysql> showvariables like '%using%';
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
|log_queries_not_using_indexes | OFF |
+-------------------------------+-------+
1 row in set (0.00sec)
mysql> set globallog_queries_not_using_indexes=1;
Query OK, 0 rowsaffected (0.00 sec)
mysql> showvariables like '%using%';
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
|log_queries_not_using_indexes | ON |
+-------------------------------+-------+
1 row in set (0.00sec)
通过mysqldumpslow工具查询慢日志
[root@HE1 bin]#mysqldumpslow --help
Usage: mysqldumpslow[ OPTS... ] [ LOGS... ]
Parse and summarizethe MySQL slow query log. Options are
--verbose verbose
--debug debug
--help write this text to standard output
-v verbose
-d debug
-s ORDER what to sort by (al, at, ar, c, l, r, t), 'at' is default
al: average lock time
ar: average rows sent
at: average query time
c: count
l: lock time
r: rows sent
t: query time
-r reverse the sort order (largest last instead of first)
-t NUM just show the top n queries
-a don't abstract all numbers to N and strings to 'S'
-n NUM abstract numbers with at least n digits within names
-g PATTERN grep: only consider stmts that include this string
-h HOSTNAME hostname of db server for *-slow.log filename (can be wildcard),
default is '*', i.e. match all
-i NAME name of server instance (if using mysql.server startup script)
-l don't subtract lock time from total time
[root@HE1 bin]#mysqldumpslow -s at -n 3 /log/mysql/slow_queries.log
Reading mysql slowquery log from /log/mysql/slow_queries.log
Count: 3 Time=2.33s (7s) Lock=0.00s (0s) Rows=1.0 (3), root[root]@localhost
select sleep(N)
Count: 1 Time=0.37s (0s) Lock=0.44s (0s) Rows=0.0 (0), root[root]@localhost
create table helei as select * frommysql.help_keyword
Count: 2 Time=0.11s (0s) Lock=0.03s (0s) Rows=0.0 (0), root[root]@localhost
insert into helei select * from mysql.help_keyword
Count: 2 Time=0.04s (0s) Lock=0.00s (0s) Rows=1.0 (2), root[root]@localhost
select count(*) from helei
mysql5.5慢日志设置和查询的更多相关文章
- mysql慢日志设置
mysql的慢日志查询对于sql的优化还是很有意义的,具体说下如何开启这个mysql慢查询日志(默认是开启的). 关于设置在mysql的官方手册或网上都有很多,但是要注意的是,mysql5.6与之前的 ...
- Mysql中错误日志、binlog日志、查询日志、慢查询日志简单介绍
前言 数据库的日志是帮助数据库管理员,追踪分析数据库以前发生的各种事件的有力根据.mysql中提供了错误日志.binlog日志(二进制日志).查处日志.慢查询日志.在此,我力求解决下面问题:各个日志的 ...
- mysql开启binlog日志和慢查询日志
1)首先,为什么要开启binlog日志和慢查询日志呢? binlog日志会记录下数据库的所以增删改操作,当不小心删除.清空数据,或数据库系统出错,这时候就可以使用binlog日志来还原数据库,简单来说 ...
- mysql 开发进阶篇系列 41 mysql日志之慢查询日志
一.概述 慢查询日志记录了所有的超过sql语句( 超时参数long_query_time单位 秒),获得表锁定的时间不算作执行时间.慢日志默认写入到参数datadir(数据目录)指定的路径下.默认文件 ...
- MySQL 通用查询日志和慢查询日志分析
MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句.2)慢查询 ...
- 关于MySQL 通用查询日志和慢查询日志分析
MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...
- 微服务日志监控与查询logstash + kafka + elasticsearch
使用 logstash + kafka + elasticsearch 实现日志监控 https://blog.csdn.net/github_39939645/article/details/788 ...
- 关于MySQL 通用查询日志和慢查询日志分析(转)
MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...
- mysql基础之日志管理(查询日志、慢查询日志、错误日志、二进制日志、中继日志、事务日志)
日志文件记录了MySQL数据库的各种类型的活动,MySQL数据库中常见的日志文件有 查询日志,慢查询日志,错误日志,二进制日志,中继日志 ,事务日志. 修改配置或者想要使配置永久生效需将内容写入配置文 ...
随机推荐
- centos 安装FTP server详情(转)
centos 安装FTP server详情 分类: linux 2013-12-27 16:45 227人阅读 评论(0) 收藏 举报 我们这里以安装vsftpd 服务器端为例子: 1.进入到cent ...
- HTML5的兼容问题以及调用js文件的方法
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- mysql中变量character_set_connection的具体作用
如题.通常的使用中,character_set_client,character_set_connection这两个变量的值是一样的,也就是说查询不需要进行编码转换.这样看来变量character_s ...
- 改变MyEclipse创建JSP时默认的pageEncoding编码
如何改变MyEclipse创建JSP时默认的pageEncoding编码 有时我们需要改变MyEclipse创建JSP时默认的pageEncoding编码,因为也许它默认的编码不是我们想要的,比如我们 ...
- HttpClient 教程 (二)
第二章 连接管理 HttpClient有一个对连接初始化和终止,还有在活动连接上I/O操作的完整控制.而连接操作的很多方面可以使用一些参数来控制. 2.1 连接参数 这些参数可以影响连接操作: 'ht ...
- The 2014 ACMICPC Asia Regional Guangzhou Online
[A]-_-/// [B]线段树+位运算(感觉可出) [C]地图BFS,找最长线 [D]地图BFS,加上各种复杂情况的最短路-_- [E]-_-/// [F]三分+圆与线段的交点,计算几何 [G]-_ ...
- webservice中采用协议Http,它是指什么意思
webservice 协议 Web Service使用的是 SOAP (Simple Object Access Protocol)协议soap协议只是用来封装消息用的.封装后的消息你可以通过各种已有 ...
- CentOS x 64 MooseFS 学习
一.MFS 简介.... MooseFS(Moose File System,mfs)是一种分布式文件系统,它将数据分布在网络中的 不同服务器上,支持FUSE,客户端可以作为一个 普通的Unix 文件 ...
- IOS9提示“不受信任的开发者”如何处理
iPhone升级到IOS9版本后,发现部分APP在下载后首次运行时,都会提示“不受信任的应用程序开发者”,这是因为企业证书发布的APP,没有经过AppStore审核,于是iOS对用户做出一个安全性的提 ...
- ios UIKit动力 分类: ios技术 2015-07-14 12:55 196人阅读 评论(0) 收藏
UIkit动力学是UIkit框架中模拟真实世界的一些特性. UIDynamicAnimator 主要有UIDynamicAnimator类,通过这个类中的不同行为来实现一些动态特性. 它一般有两种初始 ...