用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > mysql教程

mysql sort buffer和join buffer学习笔记

时间:2015-01-23  来源:西部数据  作者:西部数据

相关参数查看命令:SELECT @@join_buffer_size;SELECT @@sort_buffer_size;

join_buffer_size:当我们的join是ALL,index,rang或者Index_merge的时候使用的buffer.

实际上这种join被称为FULL JOIN,实际上参与join的每一个表都需要一个join buffer,所以在join出现的时候,至少是2个.

join buffer的这只在mysql5.1.23版本之前最大为4G,但是从5.1.23版本开始,再出了windows之外的64为平台上可以超出4GB的限制.

系统默认是128KB.

sort_buffer_size:sort buffer是系统中对数据进行排序的时候用到的Buffer,sort buffer同样是针对单个线程的,所以当多个线程同时进行排序的时候,系统中就会出现多个sort buffer.

我们一般可以通过增大sort buffer的大小来提高order by或者group by的处理性能,系统默认大小时2MB,最大限制和join buffer一样.

优化建议:如果应用中,很少出现join语句,则可以不用太在乎join_buffer_size参数的设置大小.

如果join语句不是很少的话,个人建议可以适当增大join_buffer_size到1MB左右,如果内存充足可以设置为2MB.//phpfensi.com

对于sort_buffer_size来说,一般设置为2-4MB可以满足大多数应用的需求.

当然,如果应用中的排序都比较大,内存充足却并发量不是特别大的时候,也可以继续增大sort buffer size的设置.

最后需要注意的是,每一个线程都会创建自己独立的buffer而不是整个系统共享,所以设置的值过大会造成系统内存不足.

来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门