sort_buffer_size:

时间:2023-03-09 06:52:19
sort_buffer_size:
 sort_buffer_size:

每个session 必须执行一个排序 分配一个 这个大小的buffer.

sort_buffer_size 不特定的对于任何存储引擎适用于一般的优化方式。

sort_buffer_size的最小值 必须足够大 容纳15个元组在sort buffer.

同时, 增加  max_sort_length的值 可能需要增加sort_buffer_size的值

如果你看到很多的Sort_merge_passes 每秒在  SHOW GLOBAL STATUS输出

[root@zjzc01 binlog]# mysql -uroot -p'R00t,uHagt.0511'  -e"SHOW GLOBAL STATUS" | grep -i sort
Warning: Using a password on the command line interface can be insecure.
Sort_merge_passes 44
Sort_range 8619222
Sort_rows 1212216576
Sort_scan 10157773 你可以考虑增加sort_buffer_size value来加速 ORDER BY 或者GRUP BY 操作 不能通过查询优化或者改善索引 在MySQL 5.6.4中,优化器 尝试计算难处 需要多少空间 但是可以分配更多, 最大到限制。 在MySQL 5.6.4种,优化器分配整个buffer 即使它是不完全需要的。 在任何情况下,设置它大于需要的激昂减慢大多数查询。 最好是增加它 作为session设置 在Linux上,有256KB和2MB的阀值 更多的值可能显著的减慢内分分配, 你应该考虑下面中的那些值。