zoukankan      html  css  js  c++  java
  • mongodb新手入门,mongodb命令学习

    下面来总结一下mongodb新手入门的常用命令吧。要是您是mongodb新手,可以看下。

    1,show dbs 查询mongodb里面的数据库列表

    enter image description here

    如果想查看当前连接在哪个数据库下面,可以直接输入db

    enter image description here

    想切换到test数据库下面 use test

    enter image description here

    2、db.getCollectionNames() 或者show collections 有哪些数据库表名字

    enter image description here

    效果差不多,然后可以对数据库表进行操作

    3、查询条数 db.foo.count()

    enter image description here

    4、数据库的增删改

    存储嵌套的对象

    db.foo.save({'name':'ysz','address':{'city':'beijing','post':100096},'phone':[138,139]})

    enter image description here

    查看存储的对象:

    enter image description here

    存储数组对象

    db.user_addr.save({'Uid':'yushunzhi@sohu.com','Al':['test-1@sohu.com','test-2@sohu.com']})
     #根据query条件修改,如果不存在则插入,允许修改多条记录 
     db.foo.update({'yy':5},{'$set':{'xx':2}},upsert=true,multi=true) 
    #删除yy=5的记录 
     db.foo.remove({'yy':5}) 
     #删除所有的记录 
    db.foo.remove()

    5、索引

    增加索引:1(ascending),-1(descending)

    db.things.ensureIndex({firstname: 1, lastname: 1}, {unique: true});

    索引子对象

     db.user_addr.ensureIndex({'Al.Em': 1})

    查看索引信息

    db.deliver_status.getIndexes() 
    
    db.deliver_status.getIndexKeys()

    根据索引名删除索引

     db.user_addr.dropIndex('Al.Em_1')

    6、查询

         # 查找所有 
    
          >db.foo.find() 
    
          #查找一条记录 
    
           >db.foo.findOne() 
    
          #根据条件检索10条记录 
    
           >db.foo.find({'msg':'Hello 1'}).limit(10) 
    
          #sort排序 
    
          > db.deliver_status.find({'From':'yushunzhi@sohu.com'}).sort({'Dt',-1}) 
    
           >db.deliver_status.find().sort({'Ct':-1}).limit(1) 
    
         #count操作 
    
         > db.user_addr.count() 
    
          >#distinct操作 
    
          >db.foo.distinct('msg') 
    
         #操作 
    
          >db.foo.find({"timestamp": {"$gte" : 2}}) 
    
         #子对象的查找 
    
         > db.foo.find({'address.city':'beijing'})

    7、 管理

          查看collection数据的大小 
    
           >db.deliver_status.dataSize() 
    
          #查看colleciont状态 
    
           >db.deliver_status.stats() 
    
          #查询所有索引的大小 
    
          > db.deliver_status.totalIndexSize()

    8、备份与恢复

    先介绍下命令语法:

    mongodump -h dbhost -d dbname -o dbdirectory

    -h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017

    -d:需要备份的数据库实例,例如:test

    -o:备份的数据存放位置,例如:c:datadump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。

    mongorestore -h dbhost -d dbname --directoryperdb dbdirectory

    -h:MongoDB所在服务器地址

    -d:需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2

    --directoryperdb:备份数据所在位置,例如:c:datadump est,这里为什么要多加一个test,而不是备份时候的dump,读者自己查看提示吧!

    --drop:恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!

    实际操作:

    //cd 到bin目录下
    cd c:datadbin
    //备份
    mongodump -h 127.0.0.1:27017 -d test -o c:datadump
    //恢复
    mongorestore -h 127.0.0.1:27017 -d test --directoryerdb c:datadump	est
  • 相关阅读:
    android 微信(5.3)聊天UI的布局思考
    android 屏幕适配
    不同Activity之间的动画切换
    Freemarker 进行字符串截取
    如何使带背景图片的Button按钮中的文字居中偏上显示
    关于在IE-8下 button的背景图片不能正确显示的问题
    android Xmpp+openfire 消息推送 :SASL authentication failed using mechanism DIGEST-MD5
    Android运行出现“java.io.IOException: 您的主机中的软件放弃了一个已建立的连接。”
    计算机网络
    Java基础-3
  • 原文地址:https://www.cnblogs.com/chris-oil/p/4975384.html
Copyright © 2011-2022 走看看