如何提升tidb server节点的内存使用率

为啥要调整内存使用率,如果没有性能问题,应该是正常现象吧。

1 个赞

那这条调整就没有太大意义了

1 个赞

85%的使用率其实算正常了的

1 个赞

事务量还没有上来呢吧.

节点使用率低说明没有大的join和排序操作吧

  • 核心改点:开启执行计划缓存 + 调大单查询内存配额 + 调大各类缓存容量,是提升内存使用率和缓存命中率的关键;
  • 前提条件:业务 SQL 需参数化,否则缓存命中率无法提升;
  • 验证逻辑:先改 1 个节点,观察缓存命中率和内存使用率,再全量推广,避免生产故障。

不错, 提升tidb_mem_quota_query放宽单查询内存限制,开启执行计划缓存+结果缓存解决命中率为 0 的问题

可以增大 tidb_session_plan_cache_size的配置

嗯,通过增大这个配置,可以让每个连接缓存更多的执行计划

通过缓存减少重复计算,使系统在相同硬件下支撑更高并发。调整后若 Plan Cache 命中率提升至 70%+,CPU 使用率通常会显著下降,内存使用自然升至健康水平(30%~60%)