Php 基于每个查询重置mysqli缓存

Php 基于每个查询重置mysqli缓存,php,mysql,caching,Php,Mysql,Caching,提及: 根据我的理解,我可以通过添加 "/*" . MYSQLND_QC_ENABLE_SWITCH . "*/ "."SELECT ... 在我上面的php.net链接的查询示例1前面 问题是,我能做同样的事情吗,也就是说,让服务器用一个查询动态地“重新加载”缓存 SO上的一个答案是,我可以使用 $db->query("RESET QUERY CACHE;"); 但是这需要一个额外的调用,我不需要清除所有缓存的结果 我正在为我的平台进行select to fecth配置设置,但我不想

提及:

根据我的理解,我可以通过添加

"/*" . MYSQLND_QC_ENABLE_SWITCH . "*/ "."SELECT ...
在我上面的php.net链接的查询示例1前面

问题是,我能做同样的事情吗,也就是说,让服务器用一个查询动态地“重新加载”缓存

SO上的一个答案是,我可以使用

$db->query("RESET QUERY CACHE;");
但是这需要一个额外的调用,我不需要清除所有缓存的结果

我正在为我的平台进行select to fecth配置设置,但我不想对每个请求映像、json、ajax等进行select调用,因此我会缓存来自客户端的第一个请求的结果,然后将缓存的设置用于后续请求。当新会话从客户端启动时,查询将重置缓存,如果设置更改aka maintenance==true或会话过期,则有一个监视系统将用户发送出去,等等。。所以不用担心

这只是一种情况,在这种情况下,我可以利用动态缓存和重新加载缓存的优势。我还没有测试任何东西,我只是想知道在我开始挖掘代码修补它并同时添加99个bug之前它是否可行

我使用mysqli编写的语句用于大多数情况,但不是专门用于PDO。 我没有使用任何框架, 在PHP5.4.16、centOS 7和mariaDB 5.5.52上进行开发 CentOs 6、PHP5.4.1以及prod中的MySQL 5.5.52。 精度:希望/需要一个查询,该查询将刷新此特定查询的缓存而不是所有缓存,运行查询,缓存新结果并返回结果


经过研究,我发现这可能会有所帮助

我觉得您正在寻找修改器:

SELECT SQL_NO_CACHE FROM table

将给您一个非缓存结果

它将重新缓存结果还是跳过缓存结果?我也发现了这一点,但没有文档/示例。MYSQLND\u QC\u TTL\u开关字符串SQL提示,用于设置结果集的TTL。可能通过将缓存TTL设置为0将重置缓存?根据您的链接,它不会重新缓存它…也不会缓存查询结果。但这是向前迈出的一步。我把你的问题作为每个查询的基础-所以这可能是误导,但我想做一个查询,为这个特定的查询刷新缓存,运行查询,缓存新结果并返回结果。将增加我的答案的精确度。事实上,多亏了您的comon sense提供的链接,我们可以得出结论,重置查询缓存将重置所有缓存,这不是我所期望的。我认为这可以接近我的现实: