位置: 编程技术 - 正文

深入讲解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)

  • 采购材料的进项税
  • 一般纳税人销售旧货
  • 营业收入是不是利润
  • 销售过程中客户买的是什么
  • 分类账和明细账平行登记规则
  • 发票抬头开错重开怎么处理?
  • 公关费用明细表
  • 退回投标保证金分录
  • 房屋租赁发票可以抵扣增值税吗
  • 外币收入怎么交税
  • 劳务费发票可以含材料费吗
  • 预付材料款会计分录
  • 预缴税款怎么操作
  • 河道费怎么计算
  • 水果 增值税专票
  • 应交增值税减免税款账务处理
  • 执行公司股权
  • 应收账款的贷方反映
  • 加计抵减10%会计分录用营业外收入还是其他业务收入
  • 债务重组会计处理中,债务人确认的债务重组利得
  • 对境外支付佣金的规定
  • 递延收益现金流量附表项目
  • 酒店招募
  • 业务招待费进项税额转出
  • 门窗属于建材吗还是材料
  • 小规模季报还没报改了一般纳税人
  • Win10中macos big sur虚拟机无法连接网络怎么办?
  • 银行定期存款账户
  • 支付商品展览费计入
  • 股利分配账务处理
  • 华为手机隐藏应用
  • php递归函数遍历数组
  • 筹建期间费用计什么科目
  • 小米路由器599元
  • 赠送礼品账务处理
  • 减免活动怎么做
  • php use function
  • thinkphp表单验证
  • WordPress中设置视频循环播放
  • 实战到底究竟是什么意思啊
  • 基于web的购物网站
  • css选择器nth
  • php session用法
  • 利用php抓取蜘蛛网
  • firewall enable
  • 费用报销单的经办人是什么意思
  • sqldbmon
  • 应收应付票据包括什么
  • 增值税专票什么用处
  • 食堂菜金属于什么费用
  • 道路货物运输服务税率
  • 年终奖政策,提成怎么算
  • 把公司土地转让合法吗
  • 建筑行业每月报税
  • 政府部门拨款流程
  • 因自然灾害发生固定资产净损失
  • 存货毁损损失应计入的科目是
  • 微软推送windows 11
  • linux服务端
  • 怎么在mac上看电视剧
  • 微软补丁发布时间
  • win10系统怎么设置开机启动项
  • linux vi中查找内容
  • win8 ui
  • linux cp的用法
  • opengles版本过低怎么办
  • easyui搜索框
  • linux 加法命令
  • jquery 列表实现
  • python数据结构之数组
  • JavaScript中Number.MIN_VALUE属性的使用示例
  • jquery属性选择器的基本
  • python移动目标跟踪
  • bootstrap 树形菜单
  • 编写javascript代码
  • 广西税务12366如何查看代他人缴费发票
  • 山西税务服务热线号码
  • 白酒的消费税怎么算计算列题
  • 江苏发票认证平台app
  • 房地产增值税怎么算举例说明
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设