iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >mongodb 慢查询日志使用参考
  • 164
分享到

mongodb 慢查询日志使用参考

2024-04-02 19:04:59 164人浏览 薄情痞子
摘要

mongoDB的Profiling功能->慢查询功能    Profiling 把收集到的信息写入到system.profile集合中,system.profile集合是

mongoDB的Profiling功能->慢查询功能

    Profiling 把收集到的信息写入到system.profile集合中,system.profile集合是一个capped collection。

1.定位monGodb慢查询语句方法:
     开启Profiling功能,通过定位慢查询日志,找到执行比较慢的语句,然后进行优化,思路如下:
     a.查询慢查询日志(system.profile)找到超过定义时间的慢查询语句;
     b.explain()查看执行计划,可以参考如下文章:https://blog.51cto.com/1937519/2301699
     c.确定语句慢的原因,如缺少索引,业务批量问题等,思路与传统的rdbms的sql优化等同;
   
2.开启慢查询:
   2.1:Profiling级别说明:
      a.0:关闭,不收集任何数据。
      b.1:收集慢查询数据,默认是100毫秒。
      c.2:收集所有数据
    
   2.2:数据库慢查询配置(注意写入配置文件,重启后生效):
      a.查看状态:级别和时间
      repsetzhou:PRIMARY> db.getProfilingStatus()
       { "was" : 1, "slowms" : 200 }

     b.查看级别
      repsetzhou:PRIMARY> db.getProfilingLevel()
      1

     c.设置级别
      repsetzhou:PRIMARY>  db.setProfilingLevel(2)
      { "was" : 1, "slowms" : 200, "ok" : 1 }

     d.确认设置级别:
      repsetzhou:PRIMARY> db.getProfilingLevel()
      2

     e.说明:设置级别和时间(1000 相当于1s)
      repsetzhou:PRIMARY> db.setProfilingLevel(1,1000) ###(包括级别、时间参数,时间是毫秒单位)
      { "was" : 2, "slowms" : 1000, "ok" : 1 }

2.3:在配置文件中开启慢查询:

     operationProfiling:
           slowOpThresholdMs: 200
           mode: slowOp

3.关闭Profiling:
      a.关闭:
      repsetzhou:PRIMARY> db.setProfilingLevel(0)
      { "was" : 2, "slowms" : 1000, "ok" : 1 }
      b.确认:
      repsetzhou:PRIMARY> db.getProfilingStatus()
      { "was" : 0, "slowms" : 1000 }

4.修改system.profile的大小:

    a.关闭Profiling:
      repsetzhou:PRIMARY> db.setProfilingLevel(0)
      { "was" : 0, "slowms" : 200, "ok" : 1 }
     b.删除system.profile集合:
      repsetzhou:PRIMARY> db.system.profile.drop()
       true
     c.创建一个新的system.profile集合 - 10M:
      repsetzhou:PRIMARY>db.createCollection( "system.profile", { capped: true, size:10000000 } )
      { "ok" : 1 }
     d.重新开启Profiling:
     repsetzhou:PRIMARY> db.setProfilingLevel(1)
      { "was" : 0, "slowms" : 200, "ok" : 1 }


5.1慢查询(system.profile)分析:

   repsetzhou:PRIMARY> db.system.profile.find()

   a.查询大于指定时间如500毫秒:

   db.system.profile.find({"millis":{$gte:500}})

   b.查询指定时间慢查询:

    db.system.profile.find(
                       {
                        ts : {
                              $gt : new ISODate("2018-10-22T03:01:45.976Z"),
                              $lt : new ISODate("2018-10-22T03:01:48.976Z")
                             }
                       }
                      )

    c.显示5最近的事件:

    show profile

5.2:在mongodb的日志文件中同样记录慢查询日志,如果system.profile已经被覆盖,可以参考mongodb的后台日志。

您可能感兴趣的文档:

--结束END--

本文标题: mongodb 慢查询日志使用参考

本文链接: https://www.lsjlt.com/news/36861.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mongodb慢查询日志怎么设置
    要设置MongoDB的慢查询日志,可以通过以下步骤进行: 打开MongoDB的配置文件。 在配置文件中找到以下选项:slow...
    99+
    2024-04-02
  • MySQL慢查询日志
    笔记内容:MySQL慢查询日志 笔记日期:2017-12-10 <br> MySQL日志文件系统的组成 通用查询日志 慢查询日志 和大多数关系型数据库一样,日志文件是MySQL数据库的重要...
    99+
    2024-04-02
  • Redis慢查询日志怎么使用
    今天小编给大家分享一下Redis慢查询日志怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。慢查询日志什么是SLOW L...
    99+
    2023-06-27
  • 深入讲解MongoDB的慢日志查询(profile)
    前言 说到MongoDB的慢日志分析,就不得不提到profile分析器,profile分析器将记录的慢日志写到system.profile集合下,这个集合是一个固定集合。我们可以通过对这个集合的查询,来了解...
    99+
    2024-04-02
  • mysql中慢查询日志的相关参数
    本篇内容介绍了“mysql中慢查询日志的相关参数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、 相关参数:• slow_query_lo...
    99+
    2023-06-06
  • 性能分析之MySQL慢查询日志分析(慢查询日志)
    一、背景            MySQL的慢查询日志是MySQL提供的一种日志记录,他用来记录在MySQL中响应的时间超过阈值的语句,具体指运行时间超过long_query_time(默认是10秒)值的SQL,会被记录到慢查询日志中。  ...
    99+
    2023-10-20
    mysql 数据库 慢日志分析 性能优化 慢查询日志
  • Mysql通用查询日志和慢查询日志的示例分析
    小编给大家分享一下Mysql通用查询日志和慢查询日志的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!MySQL中的日志包...
    99+
    2024-04-02
  • 如何在MySQL中使用慢查询日志
    这期内容当中小编将会给大家带来有关如何在MySQL中使用慢查询日志,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。慢查询日志相关参数MySQL 慢查询的相关参数解释:slo...
    99+
    2024-04-02
  • Redis慢查询日志及慢查询分析详解
    目录前提介绍单线程命令的处理机制本章内容什么是慢查询慢查询日志Redis慢查询日志Redis慢查询的危害Redis客户端执行一条命令的步骤慢查询引发的问题阈值和慢查询的日志的设置阈值...
    99+
    2023-01-28
    Redis慢查询日志分析 Redis慢查询
  • php中慢查询日志和错误日志的使用示例
    这篇“php中慢查询日志和错误日志的使用示例”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“php中慢查询日志和错误日志的使用示例”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章...
    99+
    2023-06-06
  • MySQL自带慢日志排查慢查询SQL
    目录1、查询有关query的相关变量:2、开启慢查询日志3. 设置慢查询阈值4.查看慢查询日志其他方式定位慢SQL 总结根据mysql自带慢日志功能定位慢SQL 1、查询有关query的相关变量: show g...
    99+
    2022-12-15
    mysql如何优化慢查询 mysql排查慢查询sql sql语句慢查询
  • Redis慢查询日志怎么配置和使用
    Redis慢查询日志可以通过配置redis.conf文件来开启和配置,具体步骤如下: 打开redis.conf文件,在其中添加如下...
    99+
    2024-05-07
    Redis
  • Mysql慢查询日志的过程
    这篇文章主要介绍“Mysql慢查询日志的过程”,在日常操作中,相信很多人在Mysql慢查询日志的过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mysql慢查询日志的过程”...
    99+
    2024-04-02
  • mysql慢查询日志是什么
    这篇文章将为大家详细讲解有关mysql慢查询日志是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。定义:mysql提供的一种记录日志的功能,用来记录mysql相应时间超...
    99+
    2024-04-02
  • mysql的慢查询日志如何查看
    要查看MySQL的慢查询日志,您可以按照以下步骤操作: 登录MySQL数据库服务器,可以通过命令行或者图形化工具进行登录。 ...
    99+
    2024-05-14
    mysql
  • MYSQL慢查询日志的查看方式
    这篇文章主要介绍“MYSQL慢查询日志的查看方式”,在日常操作中,相信很多人在MYSQL慢查询日志的查看方式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MYSQL慢查询日志...
    99+
    2024-04-02
  • MySQL慢查询日志举例分析
    这篇文章主要介绍“MySQL慢查询日志举例分析”,在日常操作中,相信很多人在MySQL慢查询日志举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL慢查询日志举例...
    99+
    2024-04-02
  • Redis慢查询日志怎么配置
    本篇内容介绍了“Redis慢查询日志怎么配置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!慢查询日志什么是...
    99+
    2024-04-02
  • MySQL慢日志查询实例分析
    本篇内容介绍了“MySQL慢日志查询实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、慢查询日志概...
    99+
    2024-04-02
  • mysql查询慢日志怎么开启
    这篇文章主要介绍“mysql查询慢日志怎么开启”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql查询慢日志怎么开启”文章能帮助大家解决问题。 ...
    99+
    2023-05-25
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作