通常情况下,MySQL会在修改表时自动清除缓存。
如果有任何其他查询时间限制决定了生命周期,或者生成的缓存可以存活多年,如果没有修改?
答案 0 :(得分:5)
不,MySQL查询缓存没有TTL过期策略。
当然,当您重新启动MySQL守护程序时,查询缓存中的所有条目都会消失。
您可以使用RESET QUERY CACHE清除查询缓存。
如果您需要更好地控制缓存,则应该使用Memcached或一些您可以直接从应用程序代码访问的类似专用缓存技术。事实上,我越来越多地建议完全禁用MySQL查询缓存。