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