为了减少io操作,我加大key_buffer_size这个值,但是最关键的表并且涉及到io最多的只有两个,我只想将这两个表的索引尽可能多地缓存进内存!这样的需求能否做到?

解决方案 »

  1.   

    那考虑将key_buffer_size设置大一点吧
      

  2.   

    恐怕不能,估计是MYSQL自行控制的吧
      

  3.   

    key_buffer_size 先走的是内存 mysql最快的速度查询是首先将数据放入内存
    占用一部分IO然后从内存中读取数据如果超过了该值的限制 采用临时表读取数据明显是你认为不能控制的
      

  4.   

    没办法,这个由MYSQL自行控制,好象是根据 LRU 原则。
      

  5.   

    如果是InnoDB,可以考虑使用每表独立表空间的方法来提供I/O能力。