不要相信mysql的key cache hit ratio: key cache hit ratio = 1 - key_reads / key_read_requests key_reads:从磁盘中读块的数量 key_read_requests:从缓存中请求读块的数量 不好的建议是: (1)你应当注意这个cache hit ratio (2)并且你应当根据这个比率设置你的key_buffer_size的大小 以上的建议有两个问题: (1)这个比率是无量纲,即你不知道key_read_requests和key_reads是处于什么数量级别的,因此你无法评估这个值 (2)它没有时间因素,即这个比值不知道其时间跨度,也无法评估这个值的优劣 如果要确实使用这个值来评估优劣,那需要一些假定: (1)key_read需对应一次磁盘I/O的物理读取 (2)从磁盘中找此key和从缓存中找此key是更慢的 (3)一个key_read是一次随机的磁盘存取 基于以上几点:则需要减少key_reads的数量 key_cache_miss_rate = key_reads / uptime 怎么样设置key_buffer_size大小呢? 可以设置一个很大的key_buffer_size,然后插入一些数据,执行一些查询,每隔一段时间测量key_buffer_size的使用大小,绘制曲线图,取其最高点的值作为key_buffer_size的大小。
mysql hit_忽略mysql的key cache hit ratio
最新推荐文章于 2022-01-01 22:05:27 发布