在magento的慢查询日志中为long_query_time设置的理想值是什么?

时间:2013-06-13 16:02:24

标签: mysql magento database-optimization

为了优化magento,我们在mysql中启用了慢查询日志。

query_long_time的理想值是什么,特别是对于magento?

2 个答案:

答案 0 :(得分:2)

我总是默认将long_query_time设置为某个高值,例如60秒甚至更高。因此,通常的行为是非常低的开销,因为它不经常写入日志。我当然希望你的大多数查询花费的时间少于60秒,但是对于Magento来说可能并非如此。 : - )

然后当我想收集日志为analyzed时,我暂时将long_query_time更改为0,因此日志包含所有查询。然后在收集完日志后将其重新设置。

我编写了一个脚本来帮助自动完成此过程:https://github.com/billkarwin/bk-tools/blob/master/full-slow-log

答案 1 :(得分:2)

long_query_time参数以秒为单位表示,因此您可以将其设置为任意秒数(默认值为10秒),然后查看日志。如果信号(即慢查询)与噪声(即其他查询)的比率太高,请将其设置为更大的数字,以仅记录需要更多时间才能完成的查询。

来自5.7 Reference Manual

  

慢查询日志包含执行时间超过long_query_time秒且需要检查至少min_examined_row_limit行的SQL语句。 long_query_time的最小值和默认值分别为0和10。该值可以指定为微秒的分辨率。对于记录到文件,写入包括微秒部分的时间。对于记录到表,只写整数倍;微秒部分被忽略。