MySQL使用了查询缓存(query cache)之后,在官方提供的一个benchmark实验中可以提升了238%以上的查询性能,而另一个实验则显示MySQL缓存的开销大概为不使用缓存时的13%。当然这个数据使用的benchmark环境有点老,机器有点过时,不过还是有方向上的参考意义。

 

有一篇文章在整理中《MySQL一些数据》,会比较详细地说明一些MySQL的状态和变量情况、作用和优化。当然也包含了以下小点。

 

MySQL的查询缓存是在SQL语句解析之前进行的。也就是说,MySQL语句如果字面上不一样,使用了不同的字符串表达,如不同的大小写方式、字符集不同等,都会导致MySQL不使用查询缓存。

 

缓存的内存使用可以由query_cache_size设置,该参数的单位是Byte而不是一些文章上所写的MB。如果不把该参数设置为0,即使用query_cache_type把缓存禁用,也不能释放该部分内存。

 

另外,之前做分片(sharding)时,对MySQL的分片做了一点考虑,当时有点疑惑(可查看《分片后的查询操作》),现在比较明朗一点。

相关文章:

  • 2022-02-09
  • 2021-07-21
  • 2021-09-25
  • 2021-05-16
  • 2021-07-09
  • 2022-12-23
  • 2022-01-21
猜你喜欢
  • 2021-10-31
  • 2021-08-10
  • 2022-12-23
  • 2021-12-01
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案