这篇文章将为大家详细讲解有关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慢查询指的是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。