MySQL 写入可能不会更新查询缓存

MySQL writes probably not updating query cache

我有一个奇怪的问题。

On MySQL 5.6 我启用了查询缓存,设置如下。

缓存的思想是每当发生写操作时,记录就会失效(删除)并在下次读取时创建。

但是,我确实经常得到过时的数据,当我更改查询中的某些字符时,它会得到更正。

我知道关闭查询缓存当然是一个可行的选项,但我在查询缓存相关设置方面做错了吗?

我阅读了有关直写缓存的内容,但在 MySQL 中找不到它的任何默认实现,也没有在任何地方清楚地提及失效。

另一个重要的一点是——我在任何时候都有很多连接对象(几十个),我的问题是否可能是因为连接级别的一些缓存(如果可能)而不是全局缓存?

编辑 - 不是

的重复问题

What is the use of "query_cache_wlock_invalidate" in MySql Query Cache?

因为这里的问题是即使在写入发生很长时间后缓存值仍在返回,因为预期写入无论如何都会导致缓存失效,因为到那时锁也会被放弃。

编辑 -

query_cache_wlock_invalidate 确实有效。问题是写入时间戳记录不正确,导致结论无效。

query_cache_wlock_invalidate 设置为 ON 有效。