说明:

操作系统:CentOS 5.X 64位

MySQL版本:mysql-5.5.35

MySQL配置文件:/etc/my.cnf

MySQL 数据库存放目录:/data/mysql

实现目的:开启MySQL慢查询日志功能,安装使用MySQL慢查询分析mysqlsla

具体操作:

一、开启MySQL慢查询功能

mysql -u  root -p  #进入MySQL控制台

show variables like '%slow%';   #查看MySQL慢查询是否开启

set global slow_query_log=ON;   #开启MySQL慢查询功能

show variables like "long_query_time";  #查看MySQL慢查询时间设置,默认10秒

set global long_query_time=;  #修改为记录5秒内的查询

select sleep();  #测试MySQL慢查询

show variables like "%slow%";  #查看MySQL慢查询日志路径

show global status like '%slow%';  #查看MySQL慢查询状态

exit;  #退出MySQL控制台

cat /data/mysql/-slow.log  #查看MySQL慢查询日志是否被记录

备注:还可以通过修改MySQL配置文件参数,开启MySQL慢查询。

vi  /etc/my.cnf  #编辑,在[mysqld]段添加以下代码

slow-query-log = on  #开启MySQL慢查询功能

slow_query_log_file = /data/mysql/127-slow.log  #设置MySQL慢查询日志路径

long_query_time = 5  #修改为记录5秒内的查询,默认不设置此参数为记录10秒内的查询

log-queries-not-using-indexes = on  #记录未使用索引的查询

:wq! #保存退出

service mysqld restart #重启MySQL服务

二、安装使用MySQL慢查询分析工具mysqlsla

1、安装mysqlsla

yum install  wget  perl  perl-DBI  perl-DBD-MySQL  mysql  #执行此命令安装依赖包

cd /usr/local/src #进入软件包存放目录

# 下载连接有问题,源代码地址:https://github.com/daniel-nichter/hackmysql.com/tree/master/mysqlsla
# 最下面常见问题有CSDN的下载连接
wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz #下载mysqlsla, tar zxvf mysqlsla-2.03.tar.gz #解压 cd mysqlsla-2.03 #进入安装目录

perl Makefile.PL  #配置

make  #编译

make install  #安装

2、使用mysqlsla分析MySQL慢查询日志

#查询记录最多的20个sql语句,并写到select.log中去

mysqlsla -lt slow --sort t_sum --top   /data/mysql/-slow.log >/tmp/select.log

#统计慢查询文件为/data/mysql/-slow.log的所有select的慢查询sql,并显示执行时间最长的100条sql,并写到sql_select.log中去

mysqlsla -lt slow  -sf "+select" -top   /data/mysql/-slow.log >/tmp/sql_select.log

#统计慢查询文件为/data/mysql/-slow.log的数据库为mydata的所有select和update的慢查询sql,并查询次数最多的100条sql,并写到sql_num.sql中去

mysqlsla -lt slow  -sf "+select,update" -top  -sort c_sum  -db mydata /data/mysql/-slow.log >/tmp/sql_num.log

三、常见问题

1、Can't locate ExtUtils/MakeMaker.pm

解决:yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

2、csdn mysqlsla下载地址

http://download.csdn.net/detail/huawei2772/9713399

本文转自:http://www.osyunwei.com/archives/7659.html

Linux下MySQL慢查询分析mysqlsla安装使用的更多相关文章

  1. linux下MySQL 5.6源码安装

    linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...

  2. Linux 下 MySQL 的彻底卸载和安装配置字符集

    前言: Linux环境下MySQL的安装和配置在网上已经有很多教程了.之所以写这篇文章是因为在配置字符集的时候找了网上的一些教程发现并不能用导致折腾了一阵子.下面的教程均是亲自实践. MySQL的彻底 ...

  3. Linux下MySQL的彻底卸载和安装配置字符集

    前言: Linux环境下MySQL的安装和配置在网上已经有很多教程了.之所以写这篇文章是因为在配置字符集的时候找了网上的一些教程发现并不能用导致折腾了一阵子.下面的教程均是亲自实践. MySQL的彻底 ...

  4. CentOS Linux下MySQL 5.1.x的安装、优化和安全配置

    下载页面:http://dev.mysql.com/downloads/mysql/5.1.html#downloads 到页面底部,找到Source downloads,这个是源码版本,下载第1个T ...

  5. linux下Mysql 8.0.19 编译安装

    1 前言 linux下安装MySQL的方式有很多种,包括以仓库的方式安装(yum,apt,zypper),以包的方式安装(rpm,deb),以docker方式安装,从压缩包解压安装,从源码编译安装,这 ...

  6. linux下mysql配置查询

    1.查看mysql的数据文件存放位置 show variables; 显示结果中的: datadir的值即是. 2.查看mysql是否支持表分区 SHOW VARIABLES LIKE '%parti ...

  7. linux下mysql的安装

    一.下载 http://dev.mysql.com/downloads/mysql/ 选择对应的版本,这里选择“Linux-Generic” 以64位系统为例,这里需要下载如下两个文件: MySQL- ...

  8. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  9. Linux下mysql安装过程

    到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic (g ...

随机推荐

  1. iOS 地图定位及大头针的基本使用

    地图 Part1 - 定位及大头针的基本使用 一.MapKit 作用 : 用于地图展示 如大头针,路线,覆盖层展示等(着重界面展示) 使用步骤 导入头文件 #import <MapKit/Map ...

  2. 【.net深呼吸】非 Web 项目使用缓存

    从.net 4 开始,非web项目也可以使用缓存技术,故曰:.net 4 乃框架成熟之标志也. 对于缓存嘛,耍过 ASP.NET 的伙伴们肯定知道,这么说吧,就是将一些使用频率较高的数据放于内存中,并 ...

  3. webService学习之路(二):springMVC集成CXF快速发布webService

    继上一篇webService入门之后,http://www.cnblogs.com/xiaochangwei/p/4969448.html ,现在我将我周六在家研究的结果公布出来 本次集成是基于之前已 ...

  4. 基於tiny4412的Linux內核移植--- 中斷和GPIO學習(1)

    作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uIma ...

  5. 【转】基于linux下的dm9000网卡移植全分析

    转自:http://blog.sina.com.cn/s/blog_6abf2c04010189ui.html DM9000可以直接与ISA总线相连,也可以与大多数CPU直接相连.Mini2440采用 ...

  6. 移动端web开发的那些坑

    1.为非a列表项添加触感样式 通过js注册touchstart和touchend事件,添加触感class的方式, 有个坑,低版本的Android浏览器,经常触发不到touchend,需要再额外注册一个 ...

  7. webpack 填坑指南

    根据慕课网的教程,重写的一遍基于webpack+react的画廊应用 github地址 第一坑: 使用json-loader的时候require文件的时候报错,显示: Module build fai ...

  8. Visual studio 通用开发环境配置:SDL,FFMPEG为例

    引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...

  9. ASP.NET MVC5 ModelBinder

    什么是ModelBinding ASP.NET MVC中,所有的请求最终都会到达某个Controller中的某个Action并由该Action负责具体的处理和响应.为了能够正确处理请求,Action的 ...

  10. jquery时间日期三级联动

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs ...