首页 > 解决方案 > 无法在 my.cnf 中禁用 query_cache_type

问题描述

由于已知的性能问题和 InnoDB 的性能问题,我正在尝试禁用 docker 中的 mariadb pod 中的 query_cache_type。我在具有以下设置的 rpm 上运行的生产服务器中有一些当前设置:

query_cache_limit=1048576
query_cache_size=1048576
query_cache_type=OFF

然而,当我尝试在我的新服务器上模仿这些设置时,当我查看“显示全局变量”时,它默认将 query_cache_type 设置为 ON

| query_cache_type                                       | ON

我试图查看错误日志并看到现在提到的术语 query_cache_type。我还重新启动了 docker mariadb 实例以刷新数据库配置,但它没有更新。有什么我应该检查的吗?是否可能是我需要完全删除数据库才能从新配置开始?我宁愿不手动更改它,因为它应该从 my.cnf 中获取正确的配置。

标签: mysqldockermariadbmysql-innodb-cluster

解决方案


从 MariaDB 10.1.7 开始,如果服务器启动时将 query_cache_size 设置为非零(和非默认)值,则 query_cache_type 会自动设置为 ON。

-- https://mariadb.com/kb/en/query-cache/

因此,将其添加(或更改)到以下[mysqld]部分my.cnf

query_cache_size=0

推荐阅读