TiKV占用内存超过的解决过程


背景

为了后去TiDB的极限数据.
晚上在每台服务器上面增加了多个TiKV的节点.
主要方式为:
每个NVME的硬盘增加两个TiKV的进程.
这样每个服务器两个磁盘, 共计4个TiKV的进程 因为TiKV其实会使用尽可能多的缓存: storage.block-cache 表示RocksDB 多个 CF 之间共享 block cache 的配置选项。
当开启时,为每个 CF 单独配置的 block cache 将无效。
shared
是否开启共享 block cache。
默认值:true capacity
共享 block cache 的大小。
默认值:系统总内存大小的 45%
单位:KB|MB|GB

问题现象

因为这种情况下:
我一个机器四个TiKV甚至还要多. 导致 block cache里面的内容其实可能大于总体内存.
直接导致内存爆满, CPU也爆高,机器宕机.
现象为:


解决方案

1. 修改配置文件:
tiup cluster edit-config erptidb
在tikv 下面增加配置主要为:
server_configs:
tidb:
enforce-mpp: true
mem-quota-query: 64294967296
tikv:
storage.block-cache.capacity: 32G 注意这个内存可以进行一下自己的计算和选择 2. 执行部分处理
tiup cluster reload erptidb -N someip:20160 3. 注意tikv的重启非常慢. 可能会有问题. 建议如果是测试环境时
执行 第二步里的设置之后就会出现reconfig了.
然后可以看看tidb的安装目录下面的 tikv-20160/config 下面的toml 文件
就会看到配置被分发了
然后可以执行 systemctl restart tikv-20160
注意如果自己的tikv比较多. 端口不一样, 服务可能也是不一样的, 需要单独重启.

注意事项

其实不建议这样处理
重启tikv 如果日志没有落盘的话可能会出现问题
导致数据库宕机.
建议至少要备份一下数据库.
注意需要先进行测试验证, 再修改.

TiKV占用内存超过的解决过程的更多相关文章

  1. 记一次java内存溢出的解决过程

    注:本文主要记录这次解决内存溢出问题的过程而不是具体问题. 最近在写一个搜索引擎,使用倒排索引结构进行文档检索,保存索引的基本思想是先将倒排列表保存到内存中一个有序Map里(TreeMap),然后当内 ...

  2. w3wp.exe进程占用内存过高解决方法

    解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp ...

  3. SQL Server 2008 R2占用内存越来越大解决方法

    最近开发sql server数据库项目的过程中发现了这么一个问题,后台网站内存占用95%,通过任务管理器查看占内存的进程sqlserver.exe,是因为SQL Server 2008 R2运行越久, ...

  4. C# Winform应用程序占用内存较大解决方法整理(转)

    原文:http://www.jb51.net/article/56682.htm 背景: 微软的 .NET FRAMEWORK 现在可谓如火如荼了.但是,.NET 一直所为人诟病的就是“胃口太大”,狂 ...

  5. (转)C# Winform应用程序占用内存较大解决方法整理

    背景: 微软的 .NET FRAMEWORK 现在可谓如火如荼了.但是,.NET 一直所为人诟病的就是“胃口太大”,狂吃内存,虽然微软声称 GC 的功能和智能化都很高,但是内存的回收问题,一直存在困扰 ...

  6. 添加IFrame导致内存溢出的解决过程(IE浏览器,目前发现了原因,还未解决)

    1.  现象 每次动态添加iframe时,iexplore.exe进程占据的内存都会增加(大概10M左右),不会自动释放,最终导致内存溢出 2.  解决过程 经过网络的一番搜索,基本上给出的解决方案是 ...

  7. C# Winform应用程序占用内存较大解决方法整理

     微软的 .NET FRAMEWORK 现在可谓如火如荼了.但是,.NET 一直所为人诟病的就是“胃口太大”,狂吃内存,虽然微软声称 GC 的功能和智能化都很高,但是内存的回收问题,一直存在困扰,尤其 ...

  8. Oracle占用内存过高解决办法

    1.cmd sqlplus system账户登录 2.show parameter sga; --显示内存分配情况 3.alter system set sga_max_size=200m scope ...

  9. Jenkins占用内存较大解决办法

    主机启动jenkins后导致内存占用较大 登录主机top按键M按消耗内存排序 未调优前查看进程 修改配置文件 /usr/local/jenkins-tomcat/bin/catalina.sh 增加一 ...

  10. 使用SpringCloud实现的微服务软件开发部署到Linux上占用内存过大问题解决办法

    问题描述 最近上线的一个使用JAVA的Spring Cloud开发的ERP软件,部署上线时发现很严重的内存资源占用过高问题,而实际上开发测试并没有很大的访问量,甚至却出现了服务器无法正常访问的现象. ...

随机推荐

  1. 虚拟化H搭建

    虚拟化H搭建 H搭建所需要的硬件配置 最大值:所有组件不能超过160个cpu 按安装H需要2G内存+若干个guest(不明确多大),最大支持2个TB内存 最小磁盘2G 一个千兆网卡 lscpu信息 [ ...

  2. Windows中开启自动dump的方法

    @echo off echo 正在启用Dump... reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error ...

  3. 文心一言 VS 讯飞星火 VS chatgpt (61)-- 算法导论6.4 5题

    文心一言 VS 讯飞星火 VS chatgpt (61)-- 算法导论6.4 5题 五.证明:在所有元素都不同的情况下,HEAPSORT 的时间复杂度是 Ω (nlgn). 文心一言: 要证明在所有元 ...

  4. 带你认识一下多模态对比语言图像预训练CLIP

    本文分享自华为云社区<多模态对比语言图像预训练CLIP:打破语言与视觉的界限>,作者:汀丶. 一种基于多模态(图像.文本)对比训练的神经网络.它可以在给定图像的情况下,使用自然语言来预测最 ...

  5. AI论文解读:基于Transformer的多目标跟踪方法TrackFormer

    摘要:多目标跟踪这个具有挑战性的任务需要同时完成跟踪目标的初始化.定位并构建时空上的跟踪轨迹.本文将这个任务构建为一个帧到帧的集合预测问题,并提出了一个基于transformer的端到端的多目标跟踪方 ...

  6. 解读clickhouse存算分离在华为云实践

    摘要:本文是我们对clickhouse做了最简单的支持obs的适配改造. 本文分享自华为云社区<clickhouse存算分离在华为云实践>,作者: he lifu. clickhouse是 ...

  7. 带你掌握Visual Studio Code的格式化程序

    摘要:Visual Studio Code 中的所有语言都可以使用其中一种自动格式化程序进行格式化,并且 Python 扩展还支持 linter. 本文分享自华为云社区<Visual Studi ...

  8. 10个问题让你快速避开java中的jdbc常见坑

    摘要:JDBC,即Java Database Connectivity,java数据库连接.是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范. 本文分享自华为云社区<1 ...

  9. Hudi Bucket Index 在字节跳动的设计与实践

    由字节跳动数据湖团队贡献的 RFC-29 Bucket Index 在近期合入 Hudi 主分支,本文详细介绍 Hudi Bucket Index 产生的背景与实践经验.字节跳动数据湖团队持续招人中, ...

  10. .Net Core EF 日志打印 SQL 语句

    Startup.cs public class Startup { public static readonly ILoggerFactory efLogger = LoggerFactory.Cre ...