为何mariadb10.11不支持query_cache_type=1的配置呢?

为何mariadb10.11不支持query_cache_type=1的配置呢?

MariaDB [(none)]> SET global query_cache_type=1;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> SET global query_cache_type=ON;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> SHOW VARIABLES LIKE '%query_cache%';
+------------------------------+---------+
| Variable_name                | Value   |
+------------------------------+---------+
| have_query_cache             | YES     |
| query_cache_limit            | 1048576 |
| query_cache_min_res_unit     | 4096    |
| query_cache_size             | 1048576 |
| query_cache_strip_comments   | OFF     |
| query_cache_type             | OFF     |
| query_cache_wlock_invalidate | OFF     |
+------------------------------+---------+
7 rows in set (0.001 sec)

在 MariaDB 10.1 及更早版本中,可以使用 query_cache_type 设置来启用或禁用查询缓存。query_cache_type 可以设置为 0、1 或 ON、OFF。其中 0 表示禁用查询缓存,1 或 ON 表示启用查询缓存。

然而在 MariaDB 10.2 及更高版本中,query_cache_type 参数已被弃用,因此不再支持设置为 1 或 ON。可以使用 query_cache_size 参数来调整查询缓存的大小,并使用 query_cache_type 参数来控制查询缓存的启用/禁用状态。

例如要在 MariaDB 10.2 及更高版本中启用查询缓存,可以使用以下命令:

SET GLOBAL query_cache_size = 1048576;
SET GLOBAL query_cache_type = ON;

上述命令将设置查询缓存大小为 1MB,并启用查询缓存。可以使用 SHOW VARIABLES LIKE '%query_cache%' 命令来查看当前查询缓存设置。
望采纳

在 MariaDB 10.1 及更高版本中,query_cache_type 参数已经被废弃,并且不能被设置成 1。 在这些版本中,可以使用 SET GLOBAL query_cache_type=ON 来启用查询缓存。


在 MariaDB 10.1 之前的版本中,query_cache_type 参数可以被设置为 0(禁用查询缓存),1(仅缓存静态语句)或 2(缓存所有语句)。


如果您希望在 MariaDB 10.1 及更高版本中使用查询缓存,可以使用如下命令启用它:

SET GLOBAL query_cache_type=ON;

然后,可以使用如下命令查看当前查询缓存的状态:

SHOW VARIABLES LIKE '%query_cache%';

如果查询缓存已启用,则 have_query_cache 变量的值应为 YES,query_cache_type 变量的值应为 ON。