首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL缓存插入查询吗?

MySQL缓存插入查询吗?
EN

Stack Overflow用户
提问于 2009-03-16 17:33:13
回答 3查看 4K关注 0票数 0

当我运行一个大型MySQL查询,向数据库插入50k条记录(包含10个小列)时,查询缓存使用率从10MB左右激增到400MB。MySQL会缓存我的插入内容吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-03-16 17:50:16

正如另一位用户所说,MySQL中有一种机制可以使缓存保持最新。执行影响缓存中先前存储结果的插入操作时,必须更新该插入操作以反映新插入操作,或者删除该插入操作,以便稍后再次处理该SELECT操作时再次创建该插入操作。我怀疑这就是你所看到的。

另一种可能性,虽然更明显,但希望不是您的问题,如果您使用显示并自动更新表的工具执行此插入,则可能是在您插入后发出SELECTS。

票数 1
EN

Stack Overflow用户

发布于 2009-03-16 17:38:26

MySQL query cache documentation说:

查询缓存存储SELECT语句的文本以及发送到客户端的相应结果。如果稍后收到相同的语句,服务器将从查询缓存中检索结果,而不是再次分析和执行该语句。

它不缓存INSERT或其他查询。

票数 8
EN

Stack Overflow用户

发布于 2009-03-16 17:38:18

它可能正在更新内存中的缓存。如果它是一个可能在缓存中的表,那么MySQL可能会尝试保持最新。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/651387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档