尽管整个数据库都是 MyISAM,但 InnoDB 数据量很大吗?

尽管整个数据库都是 MyISAM,但 InnoDB 数据量很大吗?

我正在mysqltuner调整我的数据库并遇到了一个非常奇怪的情况。

即使整个数据库(所有表)都是 MyISAM,它也会显示以下内容:

[!!] InnoDB data size / buffer pool: 403.1M/128.0M

数据库的默认存储引擎是 InnoDB(即使所有表都是 MyISAM),所以我认为这可能以某种方式导致问题,但是当我将默认存储引擎值更改为 MyISAM 时,我仍然在 mysqltuner 中看到完全相同的与 InnoDB 相关的警告。

那么为什么会发生这种情况?我该如何解决?当我不使用 InnoDB 时,我宁愿不在 InnoDB 的缓冲池上浪费 400M。

注意:我在这里并不是想讨论 MyISAM 与 InnoDB 之间的古老问题,我只是想弄清楚为什么 InnoDB 会在我没有使用它的情况下消耗我的资源。

答案1

InnoDB 仅使用 128.0M 内存,其余部分在需要时无需缓冲即可读取。这不会造成任何问题。MySQL 不会在不需要时使用 InnoDB 的缓冲区/缓存部分,因此,如果您没有任何 InnoDB 格式的内容 - 您无需担心。

您可以通过在部分中添加来完全skip-innodb禁用my.cnfInnoDB [mysqld]

相关内容