【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】
目前是3节点tikv,两个节点的tidbserver,tidb,pd,tikv单独部署。现在遇到的情况是,tidbserver节点内存使用只有百分之10,tidb的cpu到百分之80的时候内存都不涨,如何提升tidbserver节点的内存使用?现在并发比较大,sql的缓存命中几乎全是百分之0.配置参数几乎都是默认的情况下,如何修改能实现提升tidbserver的内存使用率,还有能提升缓存命中。
目前tidb_server_memory_limit=‘85%’
tidb_mem_quota_query=1GB
zhanggame1
(Ti D Ber G I13ecx U)
2025 年11 月 4 日 06:49
2
tidb节点内存和有没有多表join关系比较大,没啥join的简单查询并不太消耗内存
异乡的大人
(Ti D Ber 2 Qs S2z Ws)
2025 年11 月 4 日 08:18
4
tidb_mem_quota_query=1GB,调大查询内存配额试一下
TiDBer_SSUU
(Ti D Ber Ssu Uw M5d)
2025 年11 月 4 日 08:20
5
tidb的cpu到百分之80
80% 是机器整体负载吗,还是使用了单核的80% ? 如果只用了单核的80%,内存使用率上不去应该也正常。
TiDBer_SSUU
(Ti D Ber Ssu Uw M5d)
2025 年11 月 4 日 08:24
6
tidb_mem_quota_query 是限制单条sql内存使用率,如果执行sql返回下面这个错误,才需要调大tidb_mem_quota_query 。
Your query has been cancelled due to exceeding the allowed memory limit for a single SQL query. Please try narrowing your query scope or increase the tidb_mem_quota_query limit and try again.
1 个赞
是整体百分之80,所以很奇怪,cpu整体快打满了,内存才百分之10
调整没反应,他是并发比较大,也不是特别大的那种,单个sql占用内存小
并发高,整体延迟变高了吗
sql的缓存命中率是怎么看的?
小龙虾爱大龙虾
(Minghao Ren)
2025 年11 月 5 日 01:06
15
tidb server 内存使用不高是好事,这是正常的情况
提升tidbserver的内存使用率,还有能提升缓存命中。
一般 tidb server 是不做数据缓存的(除了有个 cop cache),因为 tidb 是分布式的一个架构,tidb server 节点都是无状态的,如果直接缓存数据,一个 tidb 节点更新数据后,还涉及到另一个节点同步的问题, tikv 提供了 block cache 缓存数据
yangyang
(Ti D Ber A Lc My4qe)
2025 年11 月 8 日 07:52
16
调大tidb_plan_cache_size 提升执行计划缓存命中率