mongodb 分片服务状态管理

时间:2021-04-29 17:58:43

查看数据库状态

db.serverStatus() -- 可查看当前数据库服务器参数连接数等参数

查看数据库信息

db.stats() --- 可查看当前数据库中文档数量,索引数量,占用空间等信息

查看当前正在执行的操作

// 查询命名空间是TS_Cloud_DB中正在执行超过3秒的操作
db.currentOp(   
   {    
     "active" : true,    
     "secs_running" : { "$gt" : 3 },    
     "ns" : /^TS_Cloud_DB\./    
   }    
)
// 结束正在执行的任务
db.killOp("shard3:466404288")

查看慢查询

db.system.profile.find()

分片平衡器状态

sh.getBalancerState() --- 查看平衡器状态
sh.isBalancerRunning() --- 查看平衡器是否在执行

设置平衡窗(对分片数据进行均衡)时间

use config
// 设置平衡时间
db.settings.update(
   { _id: "balancer" },
   { $set: { activeWindow : { start : "02:00", stop : "07:00" } } },
   { upsert: true }
)
// 关闭平衡窗
db.settings.update({ _id : "balancer" }, { $unset : { activeWindow : true } })