mongo 操作手册

一、常用命令

  1. 登录

    mongo

  2. 带auth登录

    mongo -u admin -p sdfsdf

  3. 查看db

    show dbs;

  4. 选择数据库

    use admin;

  5. 查看所有集合

    show collections

  6. 查询正在执行的命令

    db.currentOp();

  7. kill 正在执行的命令

    db.killOp(opID);

  8. 查询记录

    db.COLLECTION_NAME.find();

  9. 分页查询

    db.COLLECTION_NAME.find().skip(10).limit(5)

  10. 查询表的总条数

    db.COLLECTION_NAME.find().count();

  11. 查询限制之后的条数

    db.COLLECTION_NAME.find().skip(10).limit(5).count(true);

  12. 删除集合

    db.COLLECTION_NAME.drop()

  13. 插入文档

    db.COLLECTION_NAME.insert({"name": "123456"})

    insertOne

    insertMany([{}, {},...])

  14. 更新文档

db.collection.update(
    <query>,
    <update>,
    {
        upsert: <boolean>,
        multi: <boolean>,
        writeConcern: <document>
    }
)

   15. save,存在便更新,不存在便插入

    db.COLLECTION_NAME.save({"name": "123456"})

   16. 删除文档

    db.COLLECTION_NAME.remove({"name": "123456"}, justOne=true)

  17. 条件操作符

    db.collection2.find({age : {$gt : 30}})

    大于:$gt

    大于等于: $gte

    小于: $lt

    小于等于: $lte

    范围查询:db.collection2.find({age : {$gt : 30, $lt : 60,}})

  18. 字段类型查询

    db.collection2.find({"name" : {$type :'string'}})

  19. 排序

    db.COLLECTION_NAME.find().sort({KEY:-1})

  20. 创建索引

    db.collection.createIndex(keys, options)

  21. 聚合

    db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)

    例如:

    统计collection2集合中age>=10且=30的age的和

db.collection2.aggregate( [
  { $match : { age : { $gte : 10, $lte : 30 } } },
   {
     $group: {
        _id: null,
        total: { $sum: "$age" }
     }
   }
] )

 

二、备份和还原

  1. 备份整个库

    mongodump -h dbhost -d dbname -o dbdirectory

  2. 备份指定集合

    mongodump --collection COLLECTION --db DB_NAME

      

posted @ 2022-05-05 13:43  运维之王  阅读(71)  评论(0)    收藏  举报