mysql中的.ibd文件过大_【头条】mysql 中 limit offset 过大的性能问题如何解决

4b7e46ed62a1a6899a89f09766d74b61.png
圣卡塔利娜岛附近海藻上的西班牙披肩海蛞蝓,加利福尼亚海峡群岛
(© WaterFrame/Alamy)

本文收录于 GitHub 日问: DailyQuestion[1],内含大厂内推机会、面经大全及若干面试题,每天学习五分钟,一年进入大厂中。可在右下角打开原文查看

  • 大厂面经大全: https://q.shanyue.tech/interview.html
  • 大厂内推大全: https://q.shanyue.tech/infer/
SELECT * FROM User LIMIT 1000000, 10

如上语句,跳过 1000000 行用户,取其后的 10 个用户。其中 offset 过大,将会进行 1000000 行扫描,导致磁盘 IO 多大,拖垮数据库

解决方案也很简单: 取出这 10 个用户的 ID,由于查询 ID 使用聚簇索引,避免 100000 行的磁盘 IO,再通过子查询找到这 10 个用户的所有数据

更多链接: Mysql index configuration[2]

更多面试

【蚂蚁】什么是缓存穿透,如何解决

【字节】如何获取当前系统中的在线用户数 (并发用户数)

【头条】CORS 如果需要指定多个域名怎么办

【美团】如何获取一个进程的内存并监控

关注我

我是山月,正致力于每天用五分钟能够看完的简短答案回答一个大厂高频面试题。扫码添加我的微信,备注进群,加入高级前端进阶群.

aee9ea7da614218cc8c43e81681e4cdf.png
加我微信拉你进入面试交流群

欢迎关注公众号【互联网大厂招聘】,定时推送大厂内推信息及面试题简答,每天学习五分钟,半年进入大厂中

c92def107fea2fae087a6d51928ab267.png
每天五分钟,半年大厂中

参考资料

[1]

DailyQuestion: https://q.shanyue.tech

[2]

Mysql index configuration: https://stackoverflow.com/questions/1612957/mysql-index-configuration

- END -
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值