Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 您如何解释以下innotop输出?_Mysql_Database_Innodb - Fatal编程技术网

Mysql 您如何解释以下innotop输出?

Mysql 您如何解释以下innotop输出?,mysql,database,innodb,Mysql,Database,Innodb,我正在尝试使用InnoDB存储引擎优化运行MySQL的应用程序 在实时环境中运行innotop时,我得到以下输出: When Load QPS Slow QCacheHit KCacheHit BpsIn BpsOut Now 0.00 87.80 0 41.21% 100.00% 11.51k 836.42k Total 0.00 105.50 190 15.04% 99.34% 13.23k 692.8

我正在尝试使用InnoDB存储引擎优化运行MySQL的应用程序

在实时环境中运行
innotop
时,我得到以下输出:

When   Load  QPS     Slow  QCacheHit  KCacheHit  BpsIn   BpsOut 
Now    0.00   87.80     0     41.21%    100.00%  11.51k  836.42k
Total  0.00  105.50   190     15.04%     99.34%  13.23k  692.85k
时,
加载
QPS
是不言自明的


但是
QCacheHit
KCacheHit
BpsIn
BpsOut
呢?一般来说,这些值的“OK”值是多少?我应该在什么时候开始担心?

QCacheHit
是命中时间的百分比
KCacheHit
是命中的时间百分比(类似于)
BpsIn
是传入服务器的字节数,
BpsOut
是传出的字节数

如果使用查询缓存,
QCacheHit
应该相对较高。你们的费率似乎很低
KCacheHit
也应该相对较高,而且你的身体状况良好


BpsIn/Out
并不重要,除非您试图优化服务器发送/接收的数据量。

比率是无用的。认真地别理他们。

是的,我是innotop的作者。我加入了这些功能,这样人们就不会再要求我了

从文章中:

总结

本文的要点:

  • 计数器比率作为性能分析指标没有意义 因为它们是b)计数器的a)比率。
    • 你需要看的是绝对量值,而不是比率
    • 对于性能分析,您需要 测量经过的时间,而不仅仅是某件事情的次数 发生了
  • 在没有定时信息的情况下,如果您信任缓存的 并假设未命中比命中更昂贵,那么您 关心缓存未命中,而不是缓存命中
  • 密钥读取不能保证是随机物理I/O,但 可能是。收集超过10秒或60秒的密钥读取/正常运行时间 间隔并将结果与IO系统的功能进行比较
  • MySQL没有科学选择的好工具 密钥缓冲区大小设置,但有许多不科学的方法 这比基于比率的调整要好
  • 计数器比率对一切都很糟糕,不仅仅是对MyISAM调优
我在这些问题上有过激烈的争论,所以我不认为 上述建议将毫无争议地通过。但实际上,是时候停止了 关于计数器比率的错误建议。我们越早这么做,事情就越糟 我们越早能转向更好的事情