#独家
navicat for mysql中,同一条select语句,为什么第一次执行慢,后面就快多了?

2023-04-22 0 3,838

如题,1000w的数据,select * where name=xxxx,name有索引。第一次select耗时0.3s左右,后面都是0.05s左右,时间相差巨大。这是为什么?是因为mysql自带的缓存吗?我因为在测试索引对CRUD的影响,是否可以手动关闭mysql的缓存呢?另外mysql自带的缓存靠谱吗?能保证数据的一致性吗?
补充:
mysql版本8.0.32
navicat版本16.1.11
经百度查询mysql8是没有查询缓存的,但实际测试,第一遍运行sql的耗时就是比后面运行的时间长,这究竟是为什么?难道是navicat自带的缓存吗?

第一次数据要进内存, 后面数据已经在内存中了就会快一些
不建议使用*:

  1. 读取不需要的列会增加CPU、IO、NET消耗
  2. 不能有效的利用覆盖索引
  3. 使用SELECT *容易在增加或者删除字段后出现程序BUG

查询缓存是MySQL的一项功能,它可以缓存查询结果,以便在下一次相同的查询请求时更快地返回结果。但是,查询缓存只对相同的查询请求有效,并且在表中的数据发生更改时会自动失效;

也许Navicat 可能会缓存查询结果以提高性能

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. JK下载官网所有资源来源于开发团队,加入会员即可下载使用!如有问题请联系右下角在线客服!
2. JK下载官方保障所有软件都通过人工亲测,为每位会员用户提供安全可靠的应用软件、游戏资源下载及程序开发服务。
3. JK开发团队针对会员诉求,历经多年拥有现今开发成果, 每款应用程序上线前都经过人工测试无误后提供安装使用,只为会员提供安全原创的应用。
4. PC/移动端应用下载后如遇安装使用问题请联系右下角在线客服或提交工单,一对一指导解决疑难。

JK软件下载官网 技术分享 navicat for mysql中,同一条select语句,为什么第一次执行慢,后面就快多了? https://www.jkxiazai.com/1602.html

JK软件应用商店是经过官方安全认证,保障正版软件平台

相关资源

官方客服团队

为您解决烦忧 - 24小时在线 专业服务