千家信息网

mongodb慢查询

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,开启 Profiling 功能1. 直接在启动参数里直接进行设置启动MongoDB时加上-profile=1 即可还可以慢查询时间(即大于多少时间被记入慢查询)--slowms 2002. 可以通过d
千家信息网最后更新 2025年01月20日mongodb慢查询

开启 Profiling 功能


1. 直接在启动参数里直接进行设置

启动MongoDB时加上-profile=1 即可

还可以慢查询时间(即大于多少时间被记入慢查询)--slowms 200


2. 可以通过db.getProfilingLevel()命令来获取当前的Profile级

db.getProfilingLevel()

0 - 不开启

   1 - 记录慢命令 (默认为>100ms)

   2 - 记录所有命令


db.setProfilingLevel( level , slowms )

  db.setProfilingLevel( 1 , 10 );


3.查询慢查询记录

db.system.profile.find()

列出执行时间长于某一限度(5ms)的 Profile 记录:

> db.system.profile.find( { millis : { $gt : 5 } } )



4.慢查询参数详解

  ts-该命令在何时执行.

  millis Time-该命令执行耗时,以毫秒记.

  info-本命令的详细信息.

  query-表明这是一个query查询操作.

  ntoreturn-本次查询客户端要求返回的记录数.比如, findOne()命令执行时 ntoreturn 为 1.有limit(n) 条件时ntoreturn为n.

  query-具体的查询条件(如x>3).

  nscanned-本次查询扫描的记录数.

  reslen-返回结果集的大小.

  nreturned-本次查询实际返回的结果集.

  update-表明这是一个update更新操作.

  fastmod-Indicates a fast modify operation. See Updates. These operations are normally quite fast.

  fastmodinsert - indicates a fast modify operation that performed an upsert.

  upsert-表明update的upsert参数为true.此参数的功能是如果update的记录不存在,则用update的条件insert一条记录.

  moved-表明本次update是否移动了硬盘上的数据,如果新记录比原记录短,通常不会移动当前记录,如果新记录比原记录长,那么可能会移动记录到其它位置,这时候会导致相关索引的更新.磁盘操作更多,加上索引更新,会使得这样的操作比较慢.

  insert-这是一个insert插入操作.

  getmore-这是一个getmore 操作,getmore通常发生在结果集比较大的查询时,第一个query返回了部分结果,后续的结果是通过getmore来获取的。


查询 命令 结果 参数 这是 时间 条件 更新 移动 功能 新记录 索引 位置 信息 可以通过 大小 实际 客户 客户端 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库王珊第5版教学ppt 数据库中函数的类型有哪些 数据库删除列 数据库命名冲突与结构冲突 济南数字化城管软件开发电话 甘肃高配服务器虚拟主机 tc语言如何访问数据库 gt7服务器维护结束时间 张家港数据网络技术包括什么 中国科技互联网公司排名 绍兴创新网络技术推荐咨询 导入金蝶数据库版本不兼容 和田软件开发联系方式 数据库的概念结构设计应在 我国网络安全工作基本遵循 浪潮 刀片服务器 原神显示无法登录服务器4204 龙之谷登录选不了服务器 加工中心数据库设置 晋书翻译软件开发 在创业公司做软件开发 最好管理服务器 百度网络安全知识题库 数据库查询重复内容返回一行 exp导出数据库6 成都鸿福天成网络技术有限公司 易租星互联网科技有限公司 辽宁省公安厅网络安全总队 计算机网络安全还是应用技术好 智慧工会软件开发哪家值得信赖
0