Mysql SQL优化之 limit offset 很大时性能降低

Mysql SQL优化之 limit offset 很大时性能降低,第1张

Mysql SQL优化之 limit offset 很大时性能降低(InnoDB引擎)

在 mysql 中,如果select时 offset 很大, 即使相关索引建的挺好, 也会造成慢查询.

如:

索引只能找到主键,要取其他字段,还要用主键逐个查表,判断条件并排序,然后抛弃 offset 个, 留下 offset+1 到 offset+limit 个. 时间被花在了用主键逐个查表取别的字段那里了.

如果能在找主键的时候就抛弃不需要的行,然后需要其他字段的时候再按主键取,就能避免逐条按主键取其他字段的 IO 时间, 从而提高性能.

https://www.jb51.net/article/141933.htm

这个解决起来很麻烦,不过有解决途径:在原数据库里面导出SQL语句;找出符合现在低版本的SQL语句代码;然后在代版本中运行相关的SQL语句就OK了,、毕竟他们都是MYSQL都支持MYSQL语句,只是有一些语法上面的区别而已。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7345762.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存