当前位置:Gxlcms > mysql > MySQL查询优化--调整内部变量的详解

MySQL查询优化--调整内部变量的详解

时间:2021-07-01 10:21:17 帮助过:45人阅读

MySQL是如此的开放,所以可轻松地进一步调整其缺省设置以获得更优的性能及稳定性。需要优化的一些关键变量如下:

  改变索引缓冲区长度(key_buffer)

  一般,该变量控制缓冲区的长度在处理索引表(读/写操作)时使用。MySQL使用手册指出该变量可以不断增加以确保索引表的最佳性能,并推荐使用与系统内存25%的大小作为该变量的值。这是MySQL十分重要的配置变量之一,如果你对优化和提高系统性能有兴趣,可以从改变 key_buffer_size变量的值开始。

  改变表长(read_buffer_size)

  当一个查询不断地扫描某一个表,MySQL会为它分配一段内存缓冲区。read_buffer_size变量控制这一缓冲区的大小。如果你认为连续扫描进行得太慢,可以通过增加该变量值以及内存缓冲区大小提高其性能。

  设定打开表的数目的最大值(table_cache)

  该变量控制MySQL在任何时候打开表的最大数目,由此能控制服务器响应输入请求的能力。它跟max_connections变量密切相关,增加 table_cache值可使MySQL打开更多的表,就如增加max_connections值可增加连接数一样。当收到大量不同数据库及表的请求时,可以考虑改变这一值的大小。

  对缓长查询设定一个时间限制(long_query_time)

  MySQL带有“慢查询日志”,它会自动地记录所有的在一个特定的时间范围内尚未结束的查询。这个日志对于跟踪那些低效率或者行为不端的查询以及寻找优化对象都非常有用。long_query_time变量控制这一最大时间限定,以秒为单位。

  以上讨论并给出用于分析和优化SQL查询的三种工具的使用方法,以此提高你的应用程序性能。使用它们快乐地优化吧!

您可能感兴趣的文章:

  • MySQL查询优化之explain的深入解析
  • mysql嵌套查询和联表查询优化方法
  • MySQL查询优化:LIMIT 1避免全表扫描提高查询效率
  • Mysql使用索引实现查询优化
  • MySQL查询优化:连接查询排序limit(join、order by、limit语句)介绍
  • mysql数据库查询优化 mysql效率
  • MySQL查询优化:连接查询排序浅谈
  • MySQL慢查询优化之慢查询日志分析的实例教程
  • mysql limit查询优化分析
  • php+mysql查询优化简单实例
  • MySQL查询优化:用子查询代替非主键连接查询实例介绍
  • 浅谈MySQL中的子查询优化技巧
  • 美团网技术团队分享的MySQL索引及慢查询优化教程
  • 总结MySQL建表、查询优化的一些实用小技巧
  • MySQL查询优化之索引的应用详解
  • MySQL查询优化的5个实用技巧
  • Mysql Limit 分页查询优化详解
  • 30个mysql千万级大数据SQL查询优化技巧详解

人气教程排行