记一次MongoDB CPU飙升至99%问题的解决
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,公司业务调整,把一部分数据由Redis转至MongoDB,业务在测试环境正常,生产环境上线后发现压力一上来MongoDB的服务直接把CPU占满了,和开发的同学分析了一下也参考了一下百度上类似的问题,最
千家信息网最后更新 2025年02月03日记一次MongoDB CPU飙升至99%问题的解决
公司业务调整,把一部分数据由Redis转至MongoDB,业务在测试环境正常,生产环境上线后发现压力一上来MongoDB的服务直接把CPU占满了,和开发的同学分析了一下也参考了一下百度上类似的问题,最后定位原因:未使用索引。
解决方法很简单:对应的关键字段创建索引即可。
参考命令如下:
>use Data; #进入数据库Data,注意区分大小写;
>db.stats(); #查看数据库的状态;
>db.getCollectionNames(); #查看所有表名;
>db.dynamic.find().limit(5); #查看dynamic表的前5条数据;
>db.dynamic.find().count(); #统计dynamic表总共有多少数据;
>db.dynamic.getIndexes(); #查询表dynamic的索引
#新建索引:对dynamic的score字段以backgroud方式建立索引
>db.dynamic.ensureIndex({score:1} , {backgroud:true});
#状态查看:20秒,每秒更新一次
mongostat -h 80.81.2.3 -p 27017 --rowcount 20 1
开始创建索引的字段没找准,效果不明显,后来对关键字段创建索引后CPU使用率断崖式下跌
索引
数据
字段
业务
关键
数据库
状态
环境
参考
问题
明显
使用率
公司
压力
原因
同学
命令
大小
效果
断崖
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京学软件开发有哪些学校
网络安全渗透的安全问题
长沙财务软件开发服务
网络技术专科怎么提升眼界
陕西思安信息网络安全中标
数据库NCBI是什么
联想服务器连不上
苹果显示邮件服务器没有响应
单县钱恒鑫通网络技术服务部
为什么要把服务器放在机柜里
三级网络技术教学视屏
三水手机软件开发
环京通勤人员数据库有什么用
网络安全木马分析
网络安全普法工作开展情况
手机网络安全性类型不正确
软件开发主要岗位
网络安全网络文明手抄报一等奖
网络技术怎么选电脑
mysqli数据库操作类
网络技术三级有用吗
网络安全法第27条规定处罚多少
更新不同数据库同名表
四川工业软件开发定制
windows怎么操作数据库
软件开发人员编制
软件开发保老吗
软件开发大神们都在哪里集中
质量网络技术服务行业标准
xamp连接数据库方法