gpt4 book ai didi

mysql innodb 缓冲池大小有哪些依赖项

转载 作者:行者123 更新时间:2023-11-29 10:44:39 26 4
gpt4 key购买 nike

我想根据 innodb_buffer_pool_size 确定 RAM 的大小。但我发现的只是 innodb_buffer_pool_size 对 RAM 的依赖。

你能告诉我 innodb_buffer_pool_size 取决于哪些参数吗?查询次数?交易数量?

我想找出计算依赖于 innodb_buffer_pool_size 的 RAM 的公式。

你能帮我吗?非常感谢您的建议!

最佳答案

尺码innodb_buffer_pool_size :

  • 如果所有查询/事务都涉及小表小部分或大表,那么一个小buffer_pool就足够了。
  • 如果你有 UUID,你需要一个大的缓冲池——因为你不能通过 UUID 只触及表/索引的“微小”部分;它们太“随机”。
  • 超过 70% 的 RAM 是危险的,因为它可能会导致交换,这对性能来说很糟糕
  • 这是可用 RAM 的 70% - 需要为操作系统、代码、其他缓存等留出空间。
  • 更改 RAM 时,请更改 buffer_pool_size。或者反过来。
  • 越大越好。
  • 不需要比所有数据和索引的总大小大很多(浪费 RAM)。
  • 太小会导致大多数涉及 InnoDB 的操作效率低下。
  • buffer_pool 是一个缓存。计算机科学讨论了这意味着什么及其后果。

因此,简单的公式“将其设置为可用 RAM 的 70%”。

SHOW GLOBAL STATUS中有各种指标这可以说明 buffer_pool 是否“足够大”。但它们只有在设置大小并运行一段时间后才有用。他们只说“有很多读/写”,他们没有说是否或改变多少大小。

如果您希望我分析状态(在至少一天后),请提供

  • 多少内存
  • SHOW VARIABLES;
  • SHOW GLOBAL STATUS;

我会检查这些公式以及其他数百个公式。

关于mysql innodb 缓冲池大小有哪些依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44847685/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com