简介:

MySQLReport

一、安装

shell > yum -y install mysqlreport perl-DBD-MySQL

二、使用

shell > mysqlreport --user xxxx --password xxxx --socket /tmp/mysql.sock --flush-status --outfile .report

MySQL 5.5.-log         uptime  ::      Wed Feb   :: 

# MySQL 版本,运行时间 ( 分析时,MySQL 最好已经运行一段时间,否则数据不准确 )

__ Key _________________________________________________________________
Buffer used .44G of .00G %Used: 81.30 # Buffer 曾经最大使用内存量、率
Current .00G %Usage: 100.00 # 当前使用量、率,可以看到 Key_buffer_size 设太小了
Write hit 66.70% # ?
Read hit 99.90% # ? # MyISAM 存储引擎 Share (Key、Index) Buffer 相关参数。重要 !!!
# Buffer used 使用率是不会超过 % 的,官方文档说 Share Key Buffer 会将一部分内存给内部数据结构使用,
# 所以当 Buffer used 使用率达到 % 时,实际已经达到 % 了。 __ Questions ___________________________________________________________
Total .14G 744.6/s # MySQL 总共响应过多少查询,响应频率(QPS)
DMS .01G 659.7/s %Total: 88.59 # Data Manipulation Statements 数据处理语句总数、QPS、占所有查询百分比。
-Unknown 698.58M 458.0/s 61.50
Com_ 647.54M 424.5/s 57.01
COM_QUIT 180.60M 118.4/s 15.90
Slow s .25k 0.2/s 0.03 %DMS: 0.03 Log: ON # 慢查询次数,%DMS 0.03 代表慢查询在DMS语句中的百分比,不要大于 0.05
DMS .01G 659.7/s 88.59 # 这下面是各分类统计情况,如果开启查询缓存还会有 QC Hits 这个类别
SELECT 774.87M 508.0/s 68.22 77.00 # 最后一个字段是子类别对分类的百分比
UPDATE 184.24M 120.8/s 16.22 18.31
INSERT 40.54M 26.6/s 3.57 4.03
REPLACE 3.91M 2.6/s 0.34 0.39
DELETE 2.73M 1.8/s 0.24 0.27
Com_ 647.54M 424.5/s 57.01
begin 231.41M 151.7/s 20.37
commit 231.41M 151.7/s 20.37
set_option 175.92M 115.3/s 15.49 # 查看 MySQL 到底在做什么。重要 !!!
# 会有五个分类:DMS (Data Manipulation Statements)、QC Hits、COM_QUIT、all other Com_commands、Unknown
# 顺序是按第一个字段值排序的,如果 DMS、QC Hits 最靠前且百分比很高,说名是个很好的现象。 __ SELECT and Sort _____________________________________________________
Scan 32.45M 21.3/s %SELECT: 4.19 # SELECT 语句造成的全变扫描
Range 29.97M 19.6/s 3.87 # 范围扫描
Full join .69k 0.0/s 0.00 # 表连接
Range check /s 0.00
Full rng join /s 0.00
Sort scan 55.50M 36.4/s # 全表扫描排序
Sort range 137.91M 90.4/s # 范围扫描排序
Sort mrg pass /s # 从在这里可以看出一些性能上的问题,全表扫描、表连接、排序等。
# 这些都要特定分析,例如扫描: 如果表只有几十行跟有几百万行产生的影响肯定不一样。 __ Table Locks _________________________________________________________
Waited 43.15M 28.3/s %Total: 3.82 # 等待表锁的次数、百分比,大于 % 则表示索引设计不良或慢查询太多
Immediate .09G 712.4/s # 不需要等待,可以立即获得锁的次数 # 表锁相关,Waited 越低越好。 __ Tables ______________________________________________________________
Open of %Cache: 100.00 # 目前表打开的数量、最大打开数、table_open_cache 使用率
Opened 4.03M 2.6/s # 表平均打开次数,该值越大说明 table_open_cache 太小,需要调大 # 表缓存,如果 %Cache 为 ,那么可以尝试调大 table_open_cache (table_cache) 该值 __ Connections _________________________________________________________
Max used of %Max: 100.03 # 当前连接数,最大连接数,百分比
Total 180.64M 118.4/s # MySQL Server 数据处理是很快的,最大连接数其实不是越大越好
# 根本原因可能是慢查询、不合适的索引、DNS 解析等导致数据库处理速度下降,从而拉高最大连接数 __ Created Temp ________________________________________________________
Disk table 8.51M 5.6/s # 使用磁盘存放临时表的数量、百分比
Table 74.84M 49.1/s Size: 128.0M # 当使用磁盘存放临时表时,可以适当调高 tmp_table_size
File 0.0/s # 临时表,使用临时表本来就是个不好的事情,而使用磁盘存储更差,所以 Disk table 应该足够小。
# 增加临时表内存大小、优化 SQL,减少临时表发生 __ Threads _____________________________________________________________
Running of # 运行中的线程数,最大线程数
Cached of %Hit: 92.24 # 线程缓存数,最大线程缓存数,线程缓存命中率
Created 14.02M 9.2/s # 创建的线程数,每秒,越小越好,说明缓存命中
Slow /s # 线程缓存,MySQL 启动时会创建几个线程,然后让连接复用,%Hit 越大越好,否则调整 thread_cache_size __ Aborted _____________________________________________________________
Clients .49k 0.0/s
Connects 4.30M 2.8/s # 中断 __ Bytes _______________________________________________________________
Sent .50G .2k/s
Received .22G .9k/s # 流量 __ InnoDB Buffer Pool __________________________________________________
Usage 1021.81 of .00G %Used: 99.79 # 缓冲命中率,越大越好
Read hit 100.00%
Pages
Free %Total: 0.21
Data .55k 92.40 %Drty: 0.06
Misc 7.39
Latched 0.00
Reads .05G .5k/s # 读
From file .62k 0.3/s 0.00
Ahead Rnd /s
Ahead Sql /s
Writes 112.11M 73.5/s # 写
Flushes 9.26M 6.1/s # 刷新
Wait Free /s # 等待 # InnoDB 缓冲池,如果是一个 InnoDB 存储引擎的数据库,该值越大越好 __ InnoDB Lock _________________________________________________________
Waits /s
Current
Time acquiring
Total ms
Average ms
Max ms # InnoDB 锁,零更好 __ InnoDB Data, Pages, Rows ____________________________________________
Data
Reads .37k 0.4/s
Writes 16.00M 10.5/s
fsync 8.78M 5.8/s
Pending
Reads
Writes
fsync Pages
Created .06k 0.1/s
Read .49k 0.6/s
Written 9.26M 6.1/s Rows
Deleted 2.32M 1.5/s
Inserted 7.41M 4.9/s
Read .18G .0k/s
Updated 1.04M 0.7/s

MySQLReport的更多相关文章

  1. MySQL效能监控工具mysqlreport安装和中文说明

    管理 mysql 最让人困扰的就是如何有效的掌握 MySQL 的健康状况,因为 MySQL 虽然有提供许多系统变量值供您参考,但这些零散的数据若要手动搜集与过滤将会是一件十分没有效率的事情(除非您写 ...

  2. The Guide To Understanding mysqlreport

    The Guide To Understanding mysqlreport This guide to understanding mysqlreport explains everything t ...

  3. MySQL的性能调优工具:比mysqlreport更方便的tuning-primer.sh

    年初的时候收藏过一篇关于mysqlreport的报表解读,和内置的show status,和show variables相比mysqlreport输出一个可读性更好的报表:但Sundry MySQL提 ...

  4. mysqlreport工具

    进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在:而SHOW STATUS输出的报告正是用来计算性能瓶颈的参考数据.mysqlreport不像SHOW STATUS那样简单的罗列数据,而 ...

  5. windows下配置mysql数据库监视工具Mysqlreport

    该工具除了可以监控本机Mysql数据库外,也可以监控远程服务器mysql数据库 需要的工具: 1:perl脚本解析工具安装: http://www.activestate.com/activeperl ...

  6. centos下mysqlreport安装和使用

    首先查看你的机器是否安装了perl: #perl -v 显示版本号即表示已安装 然后: #yum install perl-DBD-mysql perl-DBI #yum install mysqlr ...

  7. mysqlreport 安装&使用

    安装包:mysqlreport-3.5.tgz 下载地址:http://hackmysql.com/scripts/mysqlreport-3.5.tgz 安装办法:[root@nagios ~]# ...

  8. 25、mysqlreport(my.cnf)调优工具

    25.1.mysqlreport介绍: mysqlreport以很友好的方式显示 MySQL状态变.事实上,它几乎报告了所有的状态.不像 SHOW STATUS 只是在显示 了100多个状态值,mys ...

  9. MySQL性能分析及explain的使用

    MySQL性能分析及explain用法的知识 1.使用explain语句去查看分析结果 如explain select * from test1 where id=1;会出现:id  selectty ...

随机推荐

  1. selenium启动谷歌所遇到的问题

    最近在学习selenium webdriver,发现启动火狐时,运行非常慢,几天前一直在尝试启动谷歌驱动启动,但启动中总遇到问题,启动不起来,一直百度查找方法,还是没搞定,个人比较执着,爱钻牛角尖,弄 ...

  2. UOJ 393 【NOI2018】归程——可持久化并查集

    题目:http://uoj.ac/problem/393 题解:https://www.cnblogs.com/HocRiser/p/9368067.html 但过不了 UOJ 的 hack 数据.不 ...

  3. php中is_null,empty,isset,unset 的区别详细介绍

    is_null, empty, isset, unset 我们先来看看这4个函数的描述. isset 判断变量是否已存在(配置)unset 把变量删除(释放)掉empty 判断变量是否为空is_nul ...

  4. 学hadoop需要什么基础

    最近一段时间一直在接触关于hadoop方面的内容,从刚接触时的一片空白,到现在也能够说清楚一些问题.这中间到底经历过什么只怕也就是只有经过的人才会体会到吧.前几天看到有个人问“学hadoop需要什么基 ...

  5. Debug---Eclipse断点调试基础

    1.进入debug模式(基础知识列表)1.设置断点 2.启动servers端的debug模式 3.运行程序,在后台遇到断点时,进入debug调试状态 ========================= ...

  6. apache-cxf-2.6.3 spring集成配置

    apache-cxf-2.6.3 <?xml version="1.0" encoding="UTF-8"?><beans xmlns=&qu ...

  7. 【Active入门-3】ActiveMQ学习-发布者与订阅者

    2015年4月28日 1个发布者,1个订阅者,topic 方式1: 先发布消息: 然后订阅消息: 方式2: 先订阅消息: 然后发布消息:订阅者如下: 结论1: 从上面可以看出,消息发布需要在线发布. ...

  8. java web 程序---jsp连接mysql数据库的实例基础+表格显示

    <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="g ...

  9. R语言学习——向量,矩阵

    在R中,基本的数据结构有:向量,矩阵,数组,数据框,列表,因子,函数等. 向量:一系列同类型的有序元素构成. 向量是一维结构. 向量是R最简单的数据结构,在R中没有标量. 标量被看成1个元素的向量. ...

  10. Linux 简单命令查询CPU、内存、网卡等信息

    [转自]Linux查询CPU.内存.网卡等信息 看CPU信息(型号)# cat /proc/cpuinfo | grep name | cut -f2 -d: |uniq -c      1  Int ...