CPU 使用率高,内存使用率低于 5% (MYSQL)。我应该添加更多 CPU 核心吗?

CPU 使用率高,内存使用率低于 5% (MYSQL)。我应该添加更多 CPU 核心吗?

我当前的服务器有 12 个核心和 96GB 的 RAM。但由于我的 MYSQL 查询,服务器的使用率始终高达 100%,而 RAM 的使用率却不到 5%。我知道主要问题在于 SQL 查询。从日志中可以看出,有些查询会汇总所有列中的值。现在由于应用程序非常庞大,短期内无法优化查询。

作为短期解决方案,我是否应该购买一台具有 32 个核心的新服务器?或者是否有办法将部分处理能力转移到服务器的 RAM 上?这样,超过 90GB 的 RAM 就不会浪费了。

答案1

不。

我还没有看到过 MySQL 服务器在耗尽其他资源之前就耗尽核心的情况。

通常,通过添加更好的索引(尤其是复合索引)和/或重新制定一些慢速查询可以解决高 CPU 使用率问题。

找到慢查询并让我们讨论它们。 SlowLog

“低 RAM 使用率”通常意味着 的值太低innodb_buffer_pool_size。该设置应为 RAM 的 70% 左右。但是,较低的设置通常意味着高 I/O,而不是高 CPU。请向我们展示SHOW CREATE TABLE一些SELECT...顽皮的查询。

相关内容