key_buffer_size = 512M
key_buffer 被称为索引缓冲区。这个值控制缓冲区的大小。该值设定需要
参照SHOW STATUS 的输出,如下图所示:
mysql> show status like ‘%key_read%’;
±------------------±----------+
| Variable_name | Value |
±------------------±----------+
| Key_read_requests | 163554268 |
| Key_reads | 98247 |
±------------------±----------+
2 rows in set (0.00 sec)
Key_reads 代表对数据库的查询操作命中磁盘 buffer的个数,
Key_read_requests 是查询操作的总数。命中磁盘的数除以总数就是不中比率
—— 在本例中每 1,000 个请求,大约有 0.6 个没有命中内存。如果每
1,000 个请求中命中磁盘的数目超过 1 个,就应该考虑增大关键字缓冲区了。
调整这个值需要根据内存大小而定,如果是独立的 db服务器,可以设置高达
80%的内存总量指定用于索引的缓冲区大小,增加它可得到更好的索引处理性
能。一般情况下对于内存在 4GB 左右的服务器该参数可设置为256M 或384M。
注意:该参数值设置的过大反而会是服务器整体效率降低!
【读书笔记】MySQL性能优化-修改key_buffer_size增强性能
最新推荐文章于 2024-07-02 11:13:18 发布