位置: 编程技术 - 正文

深入讲解MongoDB的慢日志查询(profile)(深入讲解党的创新理论)

编辑:rootadmin

推荐整理分享深入讲解MongoDB的慢日志查询(profile)(深入讲解党的创新理论),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:深入讲解WEB前端基础,深入讲解英文,深入讲解MACD:MACD红绿柱,深入讲解WEB前端基础,深入讲解了,深入讲解的意思,深入讲解的近义词,深入讲解的近义词,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

说到MongoDB的慢日志分析,就不得不提到profile分析器,profile分析器将记录的慢日志写到system.profile集合下,这个集合是一个固定集合。我们可以通过对这个集合的查询,来了解当前的慢日志,进而对数据库进行优化。

整体环境

MongoDB 3.2.5

实战

Part1:输出示范

在查询system.profile的时候,我们能够观察到所有的操作,包括remove,update,find等等都会被记录到system.profile集合中,该集合中包含了诸多信息,如:

Part2:输出解读

system.profile.op

这一项主要包含如下几类

insert query update remove getmore command

代表了该慢日志的种类是什么,是查询、插入、更新、删除还是其他。

system.profile.ns

该项表明该慢日志是哪个库下的哪个集合所对应的慢日志。

system.profile.query

该项详细输出了慢日志的具体语句和行为

system.profile.keysExamined

该项表明为了找出最终结果MongoDB搜索了多少个key

system.profile.docsExamined

该项表明为了找出最终结果MongoDB搜索了多少个文档

system.profile.keyUpdates

该项表名有多少个index key在该操作中被更改,更改索引键也会有少量的性能消耗,因为数据库不单单要删除旧Key,还要插入新的Key到B-Tree索引中

system.profile.writeConflicts

写冲突发生的数量,例如update一个正在被别的update操作的文档

system.profile.numYield

深入讲解MongoDB的慢日志查询(profile)(深入讲解党的创新理论)

为了让别的操作完成而屈服的次数,一般发生在需要访问的数据尚未被完全读取到内存中,MongoDB会优先完成在内存中的操作

system.profile.locks

在操作中产生的锁,锁的种类有多种,如下:

Global Represents global lock. MMAPV1Journal Represents MMAPv1 storage engine specific lock to synchronize journal writes; for non-MMAPv1 storage engines, the mode forMMAPV1Journal is empty. Database Represents database lock. Collection Represents collection lock. Metadata Represents metadata lock. oplog Represents lock on the oplog.

锁的模式也有多种,如下:

Lock Mode Description R Represents Shared (S) lock. W Represents Exclusive (X) lock. r Represents Intent Shared (IS) lock. w Represents Intent Exclusive (IX) lock.

system.profile.locks.acquireCoun

在各种不用的种类下,请求锁的次数

system.profile.nreturned

该操作最终返回文档的数量

system.profile.responseLength

结果返回的大小,单位为bytes,该值如果过大,则需考虑limit()等方式减少输出结果

system.profile.millis

该操作从开始到结束耗时多少,单位为毫秒

system.profile.execStats

包含了一些该操作的统计信息,只有query类型的才会显示

system.profile.execStats.stage

包含了该操作的详细信息,例如是否用到索引

system.profile.ts

该操作执行时的时间

system.profile.client

哪个客户端发起的该操作,并显示出该客户端的ip或hostname

system.profile.allUsers

哪个认证用户执行的该操作

system.profile.user

是否认证用户执行该操作,如认证后使用其他用户操作,该项为空

总结

system.profile集合是定位慢SQL的手段之一,了解每一个输出项的含义有助于我们更快的定位问题。由于笔者的水平有限,编写时间也很仓促,文中难免会出现一些错误或者不准确的地方,不妥之处恳请读者批评指正。

好了,

标签: 深入讲解党的创新理论

本文链接地址:https://www.jiuchutong.com/biancheng/312648.html 转载请保留说明!

上一篇:Linux下MongoDB数据库实现自动备份详解(linux mongodb配置文件)

下一篇:关于Mongodb参数说明与常见错误处理的总结(mongodb reference)

  • 要交多少增值税
  • 应付账款不需要函证
  • 季度报表的利润表是填本月数填六月的书吗
  • 公司职工餐费用怎样入账
  • 高新技术企业三级领域
  • 企业为员工承担的个税可以税前扣除吗
  • 工程物资什么时候结转到开发成本里面
  • 小规模纳税人不开票需要纳税吗
  • 开专票需要交城建税吗
  • 工资代扣的工会经费怎么做账
  • 合同和发票计量一样吗
  • 住宿发票要附清单吗
  • 房地产怎么计算需要交多少税
  • 外汇结款怎么办理
  • 建筑公司运营的流程
  • 企业所得税怎么征收几个点
  • 增值税发票委托公司开具
  • 哪些进项税不能转出
  • 汽车维修发票是几个点
  • 个体工商户支付宝怎么开票
  • 营改增建筑工程怎么计算举例
  • 全年一次性奖金税率表
  • Win10 Build 19043(21H1最新版)即将推送 更新内容汇总
  • 公司收到项目的现金
  • 发生销售折让会计分录
  • 抵押,质押,留置的区别与联系
  • 融资租赁税费计算
  • 任务栏音量图标点击无反应
  • 新准则待摊费用
  • php存储过程是什么
  • PHP:imagesetpixel()的用法_GD库图像处理函数
  • 用盈余公积弥补以前年度亏损
  • 职工住院的护理费标准
  • 无形资产摊销的会计及账务处理
  • 数据持久化操作
  • 企业发放年终奖政府有哪些规定?
  • 浠字的意思和含义是什么
  • 运输公司的账务处理
  • 前端工程化的理解简书
  • mmdetection optimizer
  • thinkphp 手机号和用户名同时登录
  • 持续集成的步骤
  • 税负太高会预警吗
  • discuz论坛修改密码位置
  • 【C#+JavaScript+SQL Server】实现Web端在线考试系统 五:考试模块设计(附源码和资源)
  • cpu power management设置
  • 图书发行员证书在哪里办理
  • 员工福利费会计分录 最新
  • 客户借款怎么做账
  • 合同资产科目包含增值税吗
  • 往来对账的作用
  • 捐赠的增值税可以抵扣吗
  • 坏账准备是什么凭证
  • 工会的会费收入是什么
  • 税务稽查补缴上年所得税分录
  • 确认借款无法收款怎么办
  • 购买土地支付的印花税账务处理
  • 纸质汇票什么时候能到账
  • 收到外币收入如何入账
  • 收到第三方补助怎么做账
  • 建筑劳务公司的账务处理流程
  • sqlserver的主数据库是什么
  • win10右键菜单自定义
  • linux系统的基本特征
  • mac字体发虚解决办法
  • linux做代理服务器的方法
  • sendmail -t
  • win8.1语言设置
  • win10升级版本后还要激活吗
  • Linux怎么添加用户
  • win7怎么设置工作组共享
  • opengl context for format
  • bat文件加密如何解锁
  • nodejs eventloop
  • pythonjam怎么用
  • 开发者共享是什么意思
  • 广东省税务局官网 国家税务总局
  • 减免性质代码怎么填写才正确
  • 地税开发票税率是多少
  • ca证书怎么删除
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设