MongoDB 日常操作

查询存在某个属性的记录

db.getCollection('Machine').find({LineCapacityCount:{ $exists: true }})

 

删除Machine文档中 Parameter对象的STD::STATUS属性,

{} 表示所有

{"multi":true} 表示多行

db.Machine.update({},{"$unset":{"Parameter.STD::STATUS":""}},{"multi":true})

Mongo备份

mongodump -h localhost:27017 -u btlsystem -p 123qwe -d BTL_HanDeCheQiao -o E:MongoBackup -c Machine

-h  ---ip 端口
-u  --- 用户名
-d  --- 数据库名字
-p  --- 密码

Mongo 还原

mongorestore -h 192.168.137.1:27017 -u btlsystem -p 123qwe -d BTL_HanDeCheQiao_Online --dir E:临时用BTL_HanDeCheQiao_Online

 需要先使用root账号登录,创建 btlsystem 账户

CPU占用过高分析

db.currentOp(true)   //查看当前正在进行的请求

查看语句执行日志功能状态

db.getProfilingStatus()

开启语句执行日志

db.setProfilingLevel(1,100)   //100ms以内的记录

 开启语句执行日志

db.system.profile.find().sort({$natural:-1})

根据日志内容,可以看出语句设计的表,查询条件,参数,执行时间等信息,可以根据多个请求的创建时间判断请求频率。

db.setProfilingLevel(1,100);

Newd

版权声明

作者:扶我起来我还要敲

地址:https://www.cnblogs.com/Newd/p/13802360.html

© Newd 尊重知识产权,引用请注出处

广告位

(虚位以待,如有需要请私信)

原文地址:https://www.cnblogs.com/Newd/p/13802360.html