学堂 学堂 学堂公众号手机端

MongoDB慢查询怎么理解,启动方式有什么

lewis 1年前 (2024-04-04) 阅读数 5 #技术
这篇文章主要介绍“MongoDB慢查询怎么理解,启动方式有什么”,有一些人在MongoDB慢查询怎么理解,启动方式有什么的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。



mongodb慢查询是超过指定时间的SQL语句查询。sql语句就是对数据库进行操作的一种语言。

MongoDB的 慢查询记录储存在system.profile里,默认情况下是关闭的,我们可以在数据库级别上或者是节点级别上配置。

状态码及相关描述:

0:表示关闭慢查询,默认情况下

1:表示超过阈值的查询收集

2:为所有数据库开启慢查询记录,收集所有的数据

启动方式

MongoDB慢查询有两种启动方式:

1)通过 MongoDB shell 启用

#为所有数据库开启慢查询记录
db.setProfilingLevel(2)
#指定数据库,并指定阈值慢查询,超过20毫秒的查询被记录
usetestdb.setProfilingLevel(1,{slowms:20})
#随机采集慢查询的百分比值,sampleRate值默认为1,表示都采集,0.42表示采集42%的内容。
db.setProfilingLevel(1,{sampleRate:0.42})
#查询慢查询级别和其它信息
db.getProfilingStatus()
#仅返回慢查询级别
db.getProfilingLevel()
#禁用慢查询
db.setProfilingLevel(0)

2)通过配置文件启用

在ini配置文件mongodb.conf添加以下参数,profile参数是设置开启等级,slowms是设置阈值

profile = 1

slowms = 300

在YAML配置 文件配置

operationProfiling:

mode:<string># 默认为 off,可选值 off、slowOp(对应上面的等级 1)、all(对应上面的等级 2)

slowOpThresholdMs:<int># 阈值,默认值为100,单位毫秒

slowOpSampleRate:<double># 随机采集慢查询的百分比值,sampleRate 值默认为1,表示都采集,0.42 表示采集42%的内容


到此这篇关于“MongoDB慢查询怎么理解,启动方式有什么”的文章就介绍到这了,更多相关内容请搜索博信以前的文章或继续浏览下面的相关文章,希望大家以后多多支持博信!
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门