Mongodb从入门到出门

MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

Mongodb的特点

  • 高可扩展性
  • 分布式存储
  • 低成本
  • 结构灵活

Mongodb的安装和环境搭建

  • 下载安装包和压缩包
  • 添加db存储和log文件夹
  • 添加服务、配置环境变量、启动Mongodb
  • 运行服务端:
    命令行中输入mongod,开启服务,默认端口为27017
  • 链接服务端:
    这时候服务端已经启动了,我们用命令行来链接服务端。另起一个命令行中输入mongo

Mongodb 概念解析

SQL与Mongodb的概念对照图:


对比表

通过下图实例,我们也可以更直观的了解Mongo中的一些概念:


对比图

Mongodb基本用法

查看数据库版本

db.version()

查看全部数据库

show dbs

查看当前所在的数据库

db

显示当前数据库中的集合

show collections

查看当前数据库的用户信息

shou users

使用数据库(<db>替换成一个数据库名)

use <db>

显示数据库操作命令

db.help()

显示集合操作命令(<collection>替换成一个集合名)

db.<collection>.help()

Mongodb增删改查

插入文档(<collection>替换成一个集合名)

db.<collection>.insert()

删除文档

db.<collection>.remove()

更新文档

db.<collection>.update()

查询文档

db.<collection>.find()

查询第一个文档

db.<collection>.findOne()

删除集合

db.<collection>.drop()

删除数据库

db.dropDatabase()

先定一个小目标:创建一个demo数据库

  1. 显示已有数据库:show dbs


    默认有adminconfiglocallog这几个数据库,在新建库时不允许跟这些库重名

  2. 进入数据库:use demo


    进入(使用)数据库,当库不存在时会建立一个新的库

  3. 查看当前所在的数据库:db


    查看当前所在的数据库,确实是在demo数据库中

  4. 插入文档:db.user.insert({id:1,name:'张三',age:18})


    插入一个文档,写入成功

  5. 再插入2个文档


  6. 查询所有文档:db.user.find()


    返回了刚才写入的3个文档,Mongodb自动将_id字段设置为主键

  7. 查询第一个文档:db.user.findOne()


    返回了第1个文档

  8. 更新文档:db.user.update({id:1},{id:1,name:'张三丰',age:18})


    第1个为查询条件,第2个为修改的值

  9. 再次查询:db.user.find()


    查询可知与刚才修改的一样,修改成功

  10. 删除文档:db.user.remove({id:3})


    删除一个文档,删除成功

  11. 再次查询:db.user.find()


    查询可知{id:3}的文档被成功删除了

  12. 删除集合:db.user.drop()


    删除集合成功,返回true

  13. 查看当前集合:show collections


    查看当前集合为空,故上一步删除集合成功

  14. 删除数据库:db.dropDatabase()


    删除数据库成功

  15. 显示当前数据库状态:db.stats()


    返回数据库状态,数据库为空

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,127评论 2 89
  • 简介 MongoDB 是一个基于分布式文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WE...
    大熊_7d48阅读 37,692评论 1 9
  • 一、MongoDB简介 概述MongoDB是一个基于分布式文件存储的数据库,由C++语言编写。旨在为WEB应用提供...
    未央_m阅读 3,968评论 0 1
  • NoSql数据库优缺点 在优势方面主要体现在下面几点: 简单的扩展 快速的读写 低廉的成本 灵活的数据模型 在不足...
    dreamer_lk阅读 7,755评论 0 6
  • 一、再回首 无需细数,从球场路到卢沟桥路再到分金街,一晃廿年已逝。恍然间,才觉江岸这个对于大多数人仅是区划名称的地...
    胡妈阅读 2,425评论 0 0