设为首页 收藏本站
查看: 1266|回复: 0

[经验分享] MongoDB笔记(二):MongoDB下Shell的基本操作

[复制链接]
YunVN网友  发表于 2015-7-9 12:24:06 |阅读模式
一、mongoDB与关系型数据库对比
对比项             mongoDB            关系型数据库(oracle、mysql)
集合List二维表table
表的一行数据文档document一条记录record
表字段键key字段field
字段值值value值value
主外键PK、FK
灵活扩展性极高
  
  
  
  
  
  
  
二、mongoDB基本的Shell命令
  1、创建数据库、操作表之前需要先启动mongoDB数据库(既启动服务端):
  启动服务:
  > mongod --dbpath C:\mongodb\data
       使用admin连接:     
         > mongo 127.0.0.1:27017/admin
         注:若使用mongo 127.0.0.1:27017连接,则默认是test用户连接
  2、创建一个数据库caliven:
  > use [databaseName]
         > use caliven
         注:使用use命令,只是创建了一个空的数据库,若不做任何操作离开时空数据库会被删除
    3、查看所有数据库:
        > show dbs
    4、创建一个集合并增加一条记录:
        > db.[collectionName].insert({...})
         > db.users.insert({name:"Jack"})
        注:mongoDB会默认为每条记录插入一个"_id"的字段,{...}中的数据是BSON形式的数据

    5、查看数据库所有集合:
        > show collections
    6、查询指定集合的数据:
        查询所有:
          > db.[collectionName].find()
          > db.users.find()
        查询第一条:
        > db.[collectionName].findOne()
          > db.users.findOne()
    7、更新集合数据:
        > db.[collectionName].update({查询器}, {更新内容})
        > db.users.update({name:"Jack"}, {$set:{name:"Tom"}})
        > var u = db.users.findOne()
        > db.users.update(u, {name:"Tom"})
    8、删除集合数据:
        > db.[collectionName].remove({查询器})
        > db.users.remove({name:"Jack"})
    9、删除数据库的集合:
        > db.[collectionName].drop()
       
> db.users.drop()
    10、删除数据库:
        > db.dropDatabase()
    11、Shell的help:
        > db.help() 可查看关于操作数据库的一些命令
         > db.[collectionName].help() 可查看关于操作集合的一些命令
    12、数据库和集合的命名规范:
      1> 应全部小写;
      2> 不能是空字符串;
      3> 不能含有特殊字符,如:' '  ,  $  /  \ 等;

      4> 长度最多64个字节;
      5> 数据库名称不能与现有系统保留库同名,如:admin、local、config;
      6> 名称中最好不要带"-",如"test-db",虽然合法,但操作起来比较麻烦。

    13、mongoDB的shell内置javascript引擎,可以直接执行javascript代码,如eval,function xxx(){.....}等。
  
  mongoDB 2.4.8版本的API文档地址:http://api.mongodb.org/js/2.4.8/index.html
  
    可以看看图中的相关shell执行后的效果:
     DSC0000.png
    在shell中执行javascript代码:
     DSC0001.png
  
  未完待续。。。。。。
  
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-84817-1-1.html 上篇帖子: Mongodb采用$in方式提升操作效率 下篇帖子: Mongodb FAQ fundamentals(基础篇)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表