2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > mysql慢查询日志时间戳_Mysql查询在时间戳的日期范围内非常慢

mysql慢查询日志时间戳_Mysql查询在时间戳的日期范围内非常慢

时间:2019-07-28 06:53:45

相关推荐

mysql慢查询日志时间戳_Mysql查询在时间戳的日期范围内非常慢

要提高此查询的性能,请使用合适的索引(将date_run作为索引中的前导列),并在等效谓词中引用“裸列”.

在函数中包装列(如DATE(),就像在查询中一样)会禁用MySQL优化器使用范围扫描操作.通过查询,即使索引可用,每次运行该查询时,MySQL都会对表中的每一行进行完整扫描.

为了提高性能,请在“裸”列上使用谓词,例如:

WHERE date_run >= '-5-22' AND date_run < '-5-29' + INTERVAL 1 DAY

(注意,当我们省略日期文字的时间部分时,MySQL假设时间组件为午夜’00:00:00′.我们知道每个日期时间/时间戳值,日期组件等于’-05-29’保证不到’-05-30’的午夜.)

MySQL需要适当的索引才能对此特定查询使用有效的范围扫描操作.适合此查询的最简单索引是:

... ON stocktrack (date_run)

(请注意,任何以date_run作为前导列的索引都是合适的.)

使用索引的范围扫描操作(通常)在大型集合上(通常)更有效(和更快),因为MySQL可以非常快速地从考虑中消除大量行.如果没有范围扫描操作,MySQL必须检查表中的每一行.

使用EXPLAIN来比较原始和修改之间的MySQL查询计划.

你问的问题……

“…对选项文件的任何调整……”

该问题的答案实际上取决于您使用的是哪个存储引擎(MyISAM或InnoDB).降压的最大好处来自于分配足够的缓冲区来保存内存中的数据库块,以减少I / O ……但这样做的代价是可以为运行的其他任何内存提供更少的内存,并且过度分配没有任何好处记忆.关于MySQL服务器调优的问题,除了查询性能之外,最好在上提出.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。