Mysql 您如何解释以下innotop输出?
我正在尝试使用InnoDB存储引擎优化运行MySQL的应用程序 在实时环境中运行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
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调优