NoSQL学习二:MongoDB基本管理命令

MongoDB命令学习 

一、MongoDB命令扶助

  在装置MongoDB后,启动服务器进度(mongod),可以通过在客户端命令mongo已毕对MongoDB的军事管制和监理:

图片 1

那是MongoDB最上层的通令列表,重如果治本数据库的:数据库操作辅助、集合操作帮衬、管理帮忙。如若想询问数据库操作更详尽的下令,可以一向动用db.help(),如下所示:

图片 2

二、基本命令

  1、show dbs

    突显当前数据库服务器上的数据库

  2、use pagedb

     切换来指定数据库pagedb的上下文,可以在以前后文中管理pagedb数据库以及中间的聚众等

  3、show collections

    显示数据库中具备的集合(collection)

  4、db.serverStatus()  

    查看数据库服务器的场馆。

 

  5、查询指定数据库统计音信

    use myDatabase

    db.stats()

 

 

 

三、基本DDL和DML

  3.1 数据库操作

  •   切换、创建数量库 use yourDB
  •   查询所有数据库 show dbs
  •   删除当前选取数据库 db.dropDatabase()
  •   从指定主机上克隆数据库 db.cloneDatabase("127.0.0.1")
  •   从指定的机械复制数据库数据到某个数据库 db.copyDatabase("mydb","temp","127.0.0.1")
  •   修复数据库 db.repairDatabase()
  •   查看当前选用的数量库 db.getNamedb
  •   呈现当前数据库状态 db.stats()
  •   当前db版本 db.version()
  •   查看当前数据库机器地址 db.getMongo()  

  3.2 集合操作

  •   创制集合 db.createCollection('collName',{size:20,capped:5,max:100}) 创设成功会显示{"ok":1}
  •   获得指定名称的集合 db.getCollection("account")
  •   得到当前数据库所有集合 db.getCollectionNames()
  •   得到当前数据库所有集合索引的景况 db.printCollectionStats()

  3.3 用户相关

  •   添加用户 db.addUser("name")db.addUser("userName","pwd123",true) 设置密码、是还是不是只读
  •   数据库认证 db.auth("userName","123123")
  •   呈现当前所用用户 show users
  •   删除用户 db.removeUser("userName")

  3.4 集合查询

  •   查询所用记录 db.userInfo.find() 默许每页展现20条记下
  •   查询去掉后的脚下集结中的某列的再一次数据 db.userInfo.disinct("name")
  •   等于 db.userInfo.find({"gae":22}) 查询age==22的集合
  •   大于 db.userInfo.find({"age":{$gt:22}})
  •   小于 db.userInfo.find({"age":{$lt:22}})``
  •   包含 db.userInfo.find({name:/mongo/})
  •   开头 db.userInfo.find({name:/^mongo/})
  •   查询指定列name、age db.userInfo.find({},{name:1,age:1})
  •   查询指定数据 db.userInfo.find({age:{$gt25}},{name:1,age:1})
  •   升序 db.userInfo.find().sort({age:1})
  •   降序 db.userInfo.find().sort({age:-1})
  •   查询前5条数据 db.userInfo.find().limit(5)
  •   查询10条未来的数据 db.userInfo.find().skip(10)
  •   查询5-10条数据 db.userInfo.find().limit(10).skip(5)
  •   与查询 db.userInfo.find({$or:[{age:22},{age:25}]})
  •   查询第一条数据 db.userInfo.findOne()
  •   查询集合的条数 db.userInfo.find().count()
  •   按某列举办排序 db..find({sex:{$exists:true}}).count()
  •     group  db.userInfo.group({“key”: {“age”: true},”initial”:
    {“user”: []},reduce”:
    function(cur,prev){prev.user.push(cur.name);}
        参数选项:

             1.key: 那个就是分组的key 2.initial:
    每组都享受一个开首化函数,越发注意:是每一组initial函数。 3.reduce:
    那个函数的第二个参数是眼前的文档对象,首个参数是上两回function操作的合计对象。有多少个文档,
    $reduce就会调用多少次。            4.condition: 这些就是过滤条件。
    5.finalize: 那是个函数,每一组文档执行完后,多会触发此方法。

  3.5 索引

  •   添加索引 db.users.ensureIndex({“name”:1}) ensureIndex方法参数中,数字1意味升序,-1意味降序。
  •   唯一索引 db.users.ensureIndex({“name”:1},{“unique”:true})
  •   组合索引 db.users.ensureIndex({“name”:1, “age”:-1})
  •   查看索引 db.users.getIndexes()
  •   查询索引 db.users.find({“name”:”k”}).hint({“name”:1,”age”:1})
  •   删除索引 db.users.dropIndexes()
  •   删除指定索引 db.users.dropIndex(“name_1”)
网站地图xml地图