Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 缓存MySQL查询_Php_Mysql_Caching - Fatal编程技术网

Php 缓存MySQL查询

Php 缓存MySQL查询,php,mysql,caching,Php,Mysql,Caching,是否有一种简单的方法可以在PHP中缓存MySQL查询,或者如果没有,是否有一个小类集是由某人编写并提供的?我可以缓存整个页面,但这不起作用,因为有些数据更改,但有些不起作用,我想缓存不起作用的部分。这是如何在MySQL中缓存查询的一个很好的概述: 我认为查询缓存大小默认为0,这是关闭的。 编辑my.cnf文件,使其至少有几兆字节。 无需对PHP进行任何更改:)对于您正在尝试的内容来说,这可能是完全过火了,但请查看或。如果您有定期更改的查询和不定期更改的查询,您可能不希望mysql将所有db查

是否有一种简单的方法可以在
PHP
中缓存
MySQL查询
,或者如果没有,是否有一个小类集是由某人编写并提供的?我可以缓存整个页面,但这不起作用,因为有些数据更改,但有些不起作用,我想缓存不起作用的部分。

这是如何在MySQL中缓存查询的一个很好的概述:


我认为查询缓存大小默认为0,这是关闭的。 编辑my.cnf文件,使其至少有几兆字节。
无需对PHP进行任何更改:)

对于您正在尝试的内容来说,这可能是完全过火了,但请查看或。如果您有定期更改的查询和不定期更改的查询,您可能不希望mysql将所有db查询缓存相同的时间长度

像上面这样的缓存引擎允许您逐个查询地决定数据应该缓存多长时间。因此,假设您的头中有不经常更改的数据,您可以检查它当前是否在缓存中-如果是,则返回它,否则执行查询,并将其放入缓存中,生命周期为N,因此在接下来的N秒钟内,每个页面加载都将从缓存中提取数据,而不会接近MySQL。
然后,您可以根据需要通过缓存从数据库中“实时”提取其他数据。

您可以使用缓存查询结果以及其他内容。

我建议使用整个页面缓存路线。如果某些数据发生更改,只需将标记/占位符替换为动态数据。使用这些令牌缓存整个页面,然后对令牌缓存数据的令牌进行后期处理。因此,您现在有了一个包含动态内容的缓存页面。

当我在许多Ubuntu/Debian服务器上安装mysql并检查它们的重新配置时,默认情况下会打开缓存<代码>查询缓存限制=1M和“查询缓存大小=16M”