InnoDB Write Log效率太高超过100%(1953.15%)?

2024-01-04

我的服务器上有 MariaDB,具有 16/32 个 CPU 核心,运行 mysqltuner 时一切似乎都正常,除了InnoDB写日志效率, 采取1953.15%,想知道这正常吗?或者有什么解决方案可以解决这个问题吗?感谢您的建议!

-------- InnoDB Metrics --------
[--] InnoDB is enabled.
[--] InnoDB Thread Concurrency: 0
[OK] InnoDB File per table is activated
[OK] InnoDB buffer pool / data size: 16.0G/7.0G
[OK] Ratio InnoDB log file size / InnoDB Buffer pool size: 4.0G * 1/16.0G should be equal to 25%
[--] Number of InnoDB Buffer Pool Chunk : 128 for 1 Buffer Pool Instance(s)
[OK] Innodb_buffer_pool_size aligned with Innodb_buffer_pool_chunk_size & Innodb_buffer_pool_instances
[OK] InnoDB Read buffer efficiency: 99.89% (235648939 hits/ 235906897 total)
[!!] InnoDB Write Log efficiency: 1953.15% (24219 hits/ 1240 total)
[OK] InnoDB log waits: 0.00% (0 waits / 1447 writes)

顺便说一句,mariadb/mysql 的 cpu 使用率也超过 100%...


使用 MariaDB 时,请忽略 MySQLTuner 中的此结果。根据本期的讨论,由于 MariaDB 中的错误,计算结果具有误导性:https://github.com/major/MySQLTuner-perl/issues/385 https://github.com/major/MySQLTuner-perl/issues/385

另请参阅与您的类似问题:https://dba.stackexchange.com/questions/194832/innodb-write-log-efficiency-above-100 https://dba.stackexchange.com/questions/194832/innodb-write-log-efficiency-above-100

目前尚不清楚为什么“写入日志效率”值得关注,即使它计算正确。它缺乏重要的背景。预期结果是什么?什么是不好的结果?如果太高或太低,应该改变什么?

甚至有一个问题提出这些问题:https://github.com/major/MySQLTuner-perl/issues/291 https://github.com/major/MySQLTuner-perl/issues/291

开发人员的回复向我表明他不明白InnoDB重做日志是什么。他似乎认为日志写入是缓冲池写入,但事实并非如此。

我不使用 MySQLTuner,因为它的建议常常毫无用处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

InnoDB Write Log效率太高超过100%(1953.15%)? 的相关文章