Mongodb 日常维护命令集

Mongodb 日常维护命令集

常用的库、集合的命令:
  • 查询所有数据库:show dbs;或show databases;

  • 切换/创建数据库:use 库名;

  • 查看目前所在的数据库:db;

  • 查看MongoDB目前的连接信息:db.currentOp();

  • 查看当前数据库的统计信息:db.stats();

  • 删除数据库:db.dropDatabase("库名");

  • 查看库中的所有集合:show collections;或show tables;

  • 显式创建集合:db.createCollection("集合名");

  • 查看集合统计信息:db.集合名.stats();

  • 查看集合的数据大小:db.集合名.totalSize();

  • 删除指定集合:db.集合名.drop();

  • 命令行连接

    mongo --host --port

  • 查看当前数据库

    db

  • 显示所有的数据库

    show dbs

  • 切换到目标数据库

    use <database_name>

  • 检查当前用户权限

    db.getUser("your_username")

  • 查看数据库中所有的用户

    use mydatabase

    db.getUsers()

  • 验证用户

    db.auth("testuser", "password123")

  • 使用用户身份登录

    mongo --host --port -u "testuser" -p "password123" --authenticationDatabase "<database_name>"

  • 使用 mongosh 或 mongo 命令行工具

    mongo "mongodb://user:password@192.168.249.112:2001,192.168.249.112:2002,192.168.249.112:2003"

  • 指定认证数据库:

    mongo "mongodb://user:password@192.168.249.112:2001,192.168.249.112:2002,192.168.249.112:2003/?authSource=admin"

  • 指定目标数据库:

    mongo "mongodb://user:password@192.168.249.112:2001,192.168.249.112:2002,192.168.249.112:2003/mydatabase?authSource=admin"

  • 查看索引

    db.getCollection("2025-04.files").getIndexes()

    db"2025-04.files".getIndexes()

副本集
  • 查看副本集状态

    rs.status()

  • 检查副本集是否是 primary

    db.isMaster()

  • 查看副本集的配置信息

    rs.conf()

  • 修改成员优先级

    var config = rs.conf()

    config.members1.priority = 2

    rs.reconfig(config)

  • 添加/删除副本集成员

    rs.add("192.168.1.4:27020")

    rs.remove("192.168.1.3:27019")

  • 查看当前 oplog 大小 切换到 local 数据库并查看 oplog 大小:

    use local

    db.oplog.rs.stats().maxSize

    db.printReplicationInfo();

相关推荐
北漂燕郊杨哥12 分钟前
Win11 环境下 phpStudy 安装 Redis 最新版,并为 PHP 8.5.9(NTS)配置 redis 扩展
数据库·redis·php
2603_965148119 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
ltl9 小时前
RocksDB 经典故障排查:L0、compaction 与 write stall
数据库
xfhuangfu10 小时前
Oracle中建立到CDB和PDB的连接
数据库·oracle·rpc
小小龙学IT10 小时前
DuckDB 深度实战:用 C++ 在进程内跑一个「分析型数据库」
数据库·c++
NineData11 小时前
DTCC 2026 预告|NineData CEO& 创始人叶正盛:面向 AI Agent 的数据库 DevOps 与数据复制实践
数据库·人工智能·数据库开发·devops·ninedata·数据库技术·dtcc
J_bean11 小时前
MySQL 事务是否必须手动开启?
数据库·mysql·数据库事务·自动提交·手动提交
J_bean11 小时前
MySQL InnoDB 如何检测死锁、判定死锁、处理死锁
数据库·mysql·死锁·死锁检测·处理死锁·死锁判定
浪子明X12 小时前
从 MongoDB 文档到关系模型:构建可重跑、可对账的数据迁移流水线
数据库·mongodb·oracle
杜子不疼.12 小时前
国产数据库撑起固井软件自主化:金仓 × 中海油服「海恒 Cemsol」落地解析
数据库