Mongodb开启慢查询
开启慢查询Profiling
Profiling级别说明
0:关闭,不收集任何数据。 1:收集慢查询数据,默认是100毫秒。 2:收集所有数据
1、通过修改配置文件开启Profiling
修改启动mongo.conf,插入以下代码
#开启慢查询,200毫秒的记录 profile = 1 slowms = 200
2、在启动mongodb服务以后,通过mongoshell来进行临时性打开启,只要关闭了mongodb服务,下次开启就不会启动,还得再开一次
(1)、在mongodb有权限的情况下,通过命令登录,如果没有权限可以不用写--username后面的内容
mongo --host 127.0.0.1:27017 --username 你的用户名 --password 你的密码 --authenticationDatabase admin
(2)、跳转到要开启慢查询监控的数据库
use test
(3)、设置Profiling
1:通过mongo shell: #查看状态:级别和时间 drug:PRIMARY> db.getProfilingStatus() { "was" : 1, "slowms" : 100 } #查看级别 drug:PRIMARY> db.getProfilingLevel() 1 #设置级别 drug:PRIMARY> db.setProfilingLevel(2) { "was" : 1, "slowms" : 100, "ok" : 1 } #设置级别和时间 drug:PRIMARY> db.setProfilingLevel(1,200) { "was" : 2, "slowms" : 100, "ok" : 1 }
(4)、修改“慢查询日志”的大小
#关闭Profiling drug:PRIMARY> db.setProfilingLevel(0) { "was" : 0, "slowms" : 200, "ok" : 1 } #删除system.profile集合 drug:PRIMARY> db.system.profile.drop() true #创建一个新的system.profile集合 drug:PRIMARY> db.createCollection( "system.profile", { capped: true, size:4000000 } ) { "ok" : 1 } #重新开启Profiling drug:PRIMARY> db.setProfilingLevel(1) { "was" : 0, "slowms" : 200, "ok" : 1 }
注意:要改变Secondary的system.profile的大小,你必须停止Secondary,运行它作为一个独立的,然后再执行上述步骤。完成后,重新启动加入副本集。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人