mysqlreport输入内容详解

来源:互联网 发布:最新数据库编程工具 编辑:程序博客网 时间:2024/05/23 18:29

一、mysqlreport安装步骤,请参考我的博客链接
http://blog.csdn.net/m0_37886429/article/details/72959986

二、输入内容

MySQL 5.6.35             uptime 0 0:58:2        Fri Jun  9 23:19:01 2017__ Key _________________________________________________________________Buffer used     1.00k of   8.00M  %Used:   0.01  Current       1.46M            %Usage:  18.25Write hit       0.00%Read hit        0.00%__ Questions ___________________________________________________________Total             229     0.1/s  Com_            153     0.0/s  %Total:  66.81  DMS              42     0.0/s           18.34  COM_QUIT         34     0.0/s           14.85Slow 10 s           0       0/s            0.00  %DMS:   0.00  Log:DMS                42     0.0/s           18.34  SELECT           42     0.0/s           18.34        100.00  REPLACE           0       0/s            0.00          0.00  DELETE            0       0/s            0.00          0.00  INSERT            0       0/s            0.00          0.00  UPDATE            0       0/s            0.00          0.00Com_              153     0.0/s           66.81  set_option       98     0.0/s           42.79  show_status      11     0.0/s            4.80  show_variab      10     0.0/s            4.37__ SELECT and Sort _____________________________________________________Scan               49     0.0/s %SELECT: 116.67Range               0       0/s            0.00Full join           2     0.0/s            4.76Range check         0       0/s            0.00Full rng join       0       0/s            0.00Sort scan           7     0.0/sSort range          0       0/sSort mrg pass       0       0/s__ Query Cache _________________________________________________________Memory usage   16.81k of   1.00M  %Used:   1.64Block Fragmnt 100.00%Hits                0       0/sInserts             1     0.0/sInsrt:Prune       1:1       0/sHit:Insert     0.00:1__ Table Locks _________________________________________________________Waited              0       0/s  %Total:   0.00Immediate           0       0/s__ Tables ______________________________________________________________Open               68 of 2000    %Cache:   3.40Opened             75     0.0/s__ Connections _________________________________________________________Max used            2 of  151      %Max:   1.32Total              36     0.0/s__ Created Temp ________________________________________________________Disk table          1     0.0/sTable              60     0.0/s    Size:  16.0MFile                0       0/s__ Threads _____________________________________________________________Running             1 of    1Cached              1 of    9      %Hit:  94.44Created             2     0.0/sSlow                0       0/s__ Aborted _____________________________________________________________Clients             0       0/sConnects            0       0/s__ Bytes _______________________________________________________________Sent          234.47k    67.3/sReceived       12.34k     3.5/s__ InnoDB Buffer Pool __________________________________________________Usage           3.58M of 127.98M  %Used:   2.80Read hit       77.76%Pages  Free          7.96k            %Total:  97.20  Data            229                      2.80 %Drty:   0.00  Misc              0                      0.00  Latched                                  0.00Reads           1.03k     0.3/s  From file       230     0.1/s           22.24  Ahead Rnd         0       0/s  Ahead Sql                 0/sWrites              1     0.0/sFlushes             1     0.0/sWait Free           0       0/s__ InnoDB Lock _________________________________________________________Waits               0       0/sCurrent             0Time acquiring  Total             0 ms  Average           0 ms  Max               0 ms__ InnoDB Data, Pages, Rows ____________________________________________Data  Reads           249     0.1/s  Writes            5     0.0/s  fsync             5     0.0/s  Pending    Reads           0    Writes          0    fsync           0Pages  Created           0       0/s  Read            229     0.1/s  Written           1     0.0/sRows  Deleted           0       0/s  Inserted          0       0/s  Read              3     0.0/s  Updated           0       0/s

说明:

1、Report Header(基本信息): line 1
说明mysql当前的版本,运行的时间,以及当前系统时间

2、Key Report(索引报表): line 3 - 7
这里写图片描述

1)mysql当前索引缓冲区的使用率,如果过高,则需要调整key_buffer_size的大小了。write hit及read hit分别说明了写索引和读索引的效率。
报表中的第四行(Buffer used)指出 mysql “曾经” 耗用过的最大内存数量,因此目前 “正在使用” 的内存数量有可能少于(甚至大于)这个数字。mysql 称此数值为 “High Water Mark”,但在报表的下一行我们将会看到它并不总是如此。无论如何,从 Buffer used 我们通常可以看出 key_buffer_size 这个系统变量值是否设定的够大,如果你的 mysql 已经使用了 80~90% 以上的 Key Buffer,你就应该要调高 key_buffer_size。
注意,Buffer used 永远不会有使用率超过 95% 的情况,因为 mysql 的官方文件中指出 Share Key Buffer 中有部份将会挪用给内部数据结构使用,因此当Buffer used 指出 Share Key Buffer 的使用率高达 95% 时,其实在实务上等于是已使用了 100% 的Share Key Buffer。在这个例子中 server 只使用了 380KB(0.07%) 的 Share Key Buffer,看到这里也许您会判断 server 的 Share Key Buffer 是十分充足的,但请勿太早下定论,我们必须要接着考虑报表中的下一行才能做出客观的判断……。

2)Current: line 5
Key_blocks_unused 这个系统变量来决定目前 mysql “正在使用” 的 Share Key Buffer 大小。目前这台 server 已经使用了大约 1.46MB(18.25%) 的 Share Key Buffer,这是一个好现象因为它代表了你的Share Key Buffer 仍然十分充足。Current 与 Buffer used 合在一起看即可提供一个很有用的指标,告诉您目前的key_buffer_size 是否充足。
设定 key_buffer_size 的方式也很简单,只要直接修改 mysql 的设定档然后重新启动 server 即可。例如若要将 Key Buffer 设定为 2000MB,则只要在 /etc/my.cnf 中加上:

[mysqld]key_buffer_size=2000M

3、Questions Report(请求报表): lines 9 - 24
这里写图片描述

1)第一部分Total: line 10
mysql处理的总请求数、平均每秒处理的请求数及请求类型。
QC Hists:是指mysql直接从查询缓存中请求结果的数量,也就是查询缓存的命中率,此值越高越好
DMS:是指数据操作语言,也就是增删改查
Com_:是指mysql处理自身运行所使用的开销
2)第二部分Slow: line 14
说明mysql的慢查询数,多长时间的查询被认为是慢查询,是由long_query_time定义的。处理慢查询的比例越低越好,一般不要超过0.05%。慢查询日志建议开启。
3)第三部分DMS: lines 15 - 20
说明了DMS中各种语句的处理数及比例
4)第四部分Com_: lines 21 - 26
详细说明了Com_中各事件的处理数及比例。这个子分类只有在它的值偏高的时候才需要注意,因为过高的值表示 mysql 正在忙着处理 “程序方面的东西”,而不是响应使用者的查询。对大部份的 server 来说这里应该都不会出现偏高的数值,但您最好还是定期的检查一下。

4、SELECT and Sort Report(查询与排序): lines 26 - 34
这里写图片描述

详细说明mysql在查询时的资源消耗
scan展示的是对全表进行扫描的select语句个数
full join则是多表联合查询的次数

5、Query Cache Report(查询缓存): lines 36 - 42
这里写图片描述

Query Cache Report 只有在 mysql 有支持 Query Cache,以及 Query Cache 功能有开启的情况下才会有这段信息出现。
Block Fragmnt:是指内存块碎片,如果你有一个返回超小结果的海量查询,默认的块大小(即4KB)可能会导致大量的内存碎片,这个时候,需要降低”query_cache_min_res_unit”的值,比值越大,碎片越多,一般不建议超过10%
Hits/Inserts/Prunes:其中Hits是最重要的,它反应了有多少查询是从查询缓存中直接获得的,Prunes是指每秒删除的碎片时,该值越低越好
insert/prune:是一个波动性的QC指标。一个稳定运行中的QC,insert进QC的查询数量应该大于prune掉的查询数量。而一个不稳定的QC,比值或许是1:1,甚至偏向prune。这说明两个问题:1、QC大小不够;2、mysql试图缓存一切
hit/insert:用来反映QC的有效性。理想情况是:mysql插入一批稳定的查询到QC里,然后源源不断的命中这批结果……所以,如果QC的有效性足够,这个比值应该是偏向hit的。

6、Table Locks Report(表锁): lines 44 - 46
这里写图片描述

第一项是 Waited,代表 mysql 需要等待以取得 table lock 的次数
第二项是 Immediate,表示mysql 不需要等待即可立刻取得 table lock的次数
对数据库来说『等待』几乎可以肯定是一件很不好的事情,因此 Waited 的值应该要越小越好。最具有代表性的是第三个字段 (Waited 占所有 table lock 的百分比),这个数值应该要小于 10%,大于这个值就表示table/query 的索引设计不良或是有过多的 Slow Query。

7、Tables Report(表): lines 48 - 50
这里写图片描述

Open,显示目前正开启的 table 数量、总共可开启的最大数量,以及 Table Cache 的使用状况,如果达到100%,则需要调整”table_open_cahce”的大小
Opend,表示当前打开表的频率。
这里有两件事值得注意:
首先是Table Cache 的使用状况,100% 的 Table Cache 使用率并不是一件坏事但你可以试着调大 Table Cache 以增进
效能。
第二是 mysql 开启 Table 的平均速率,若这个值很高则表示您的 table_cache 设得太小了,需要调大一些。一般来说,mysql 开启 Table 的平均速率最好是小于 1/s。不过一个负载比较高而又运行的还不错的mysql,可能能达到每秒打开7次表,依然保持100%的表缓存。

8、Connections Report(数据库连接数): lines 52 - 54
这里写图片描述

如果最大连接数接近100%,则需要调整”max_connetions”参数,当然如果连接数过大,有可能是慢查询、糟糕的索引、dns解析太慢所导致的问题;每秒连接数,一般小于5个每秒,但通常只要mysql运行正常,就无所谓

9、Created Temp Report(临时表): lines 56 - 59
这里写图片描述

mysql可以在内存、磁盘及临时文件上创建临时表,要尽可能避免在磁盘上创建临时表,因为速度最慢,要尽可能在内存中创建,第三行的Table就妈表示在内存中创建临时表的大小,Size是指定的内存允许创建的临时表的大小,可以通过”tmp_table_size”参数来调整其大小

10、Threads Reports(线程): lines 61 - 65
这里写图片描述

当mysql的连接数超过了线程缓存数时,需要增大”thread_cache_size”参数的大小

11、Aborted Bytes Reports(中断及流量): lines 67 - 73
这里写图片描述

12、InnoDB Buffer Pool Reports(Innodb缓冲池): lines 75 - 89
这里写图片描述

innodb缓冲池的大小可以通过”innodb_buffer_size”参数来调整,作为一个innodb引擎的数据库,请尽可能调大该值。

13、InnoDB Lock Reports(innodb锁): lines 91 - 97
这里写图片描述

14、InnoDB Data, Pages, Rows Reports(innodb数据、页、行): lines 99 - 118
这里写图片描述

第一部分列出了四种类型的数据操作,分别是读、写、刷新、等待
第二部分列出了innodb的页信息,缓冲池中页的创建、读取、写入的数量
第三部分则列出了一些对innodb行进行增删改查的数据量

原创粉丝点击