温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mongodb慢查询指的是什么意思

发布时间:2021-03-04 12:31:00 来源:亿速云 阅读:321 作者:小新 栏目:编程语言

小编给大家分享一下mongodb慢查询指的是什么意思,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

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

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

状态码及相关描述:

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

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

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

启动方式

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

1)通过 MongoDB shell 启用

#  为所有数据库开启慢查询记录
db.setProfilingLevel(2)
#  指定数据库,并指定阈值慢查询 ,超过20毫秒的查询被记录
use testdb.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慢查询指的是什么意思”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI