基本概念

MongoDB是一个面向文档的数据库,不是关系型数据库。MongoDB是无模式的,也就是说文档的键不需要事先定义,也不会是一成不变。

跟关系数据库相比,MongoDB中出现了一些新的定义:

  • 文档:相当于关系数据库中的一行,是MongoDB的基本数据单元。文档是一组键/值对的有序组合。
    • 文档中的键/值对是有序的,也就是说{"name": "Wilber", "age": 27}和{"age": 27, "name": "Wilber"}是不同的文档
    • 文档的值是有类型区分的,同时文档也是大小写敏感的。

      {"name": "Wilber", "age": 27}不同于{"name": "Wilber", "age": "27"}

    • 另一点需要注意的是,MongoDB的文档中是不允许有重复键的。

      非法的文档,{"name": "Wilber", "name": "Will"}

  • 集合:集合是一组文档的组合,相当于关系数据库中的表,但却是无模式的表。

    文档{"name": "Wilber", "age": 27}和{"name": "Will"}可以存放在同一个集合中。

  • 数据库:是一组集合的组合。一个MongoDB实例可以管理多个数据库,每个数据库对应不同的磁盘文件,所以每个数据库都有独立的权限控制。

基本操作

MongoDB服务端启动:

我的MongoDB装载C盘,通过以下方式启动。截图中通过—dbpath参数制定了DB的存放目录。可以通过mongod.exe –help查看更多选项。

从图中可以得到的信息:

  • DB version是v2.6.5
  • MongoDB服务器使用27017端口

Mongod还会启动一个HTTP服务器,监听比服务器高1000的端口。也就是通过http://localhost:28017/可以得到数据库的管理信息。

MongoDB Shell:

MongoDB自带一个JavaScript shell,可以通过命令行来操作MongoDB数据库。

启动MongoDB shell,通过help命令,可以列出shell命令帮助

总结

通过上面的介绍,可以对MongoDB有一个初步的了解,接下来将开始文档的增删改查操作了。

MongoDB入门知识的更多相关文章

  1. MongoDB基础知识 01

    MongoDB基础知识  1. 文档  文档是MongoDB中的数据的基本单元,类似于关系型数据库管理系统的行. 文档是键值对的一个有序集.通常包含一个或者多个键值对. 例如: {”greeting& ...

  2. mongodb入门篇

    MongoDB 入门篇 分类: NoSQL, 故障解决 undefined 1.1 数据库管理系统 在了解MongoDB之前需要先了解先数据库管理系统 1.1.1 什么是数据? 数据(英语:data) ...

  3. MongoDB 入门之基础 DCL

    此文章主要记录部分主要的 MongoDB 的 DCL 操作. MongoDB 默认不需要用户名和密码就可以用 mongodb.exe 登录 一.开启 MonogoDB 的权限模式 修改 MongoDB ...

  4. MongoDB入门三:MongoDB shell

    MongoDB shell MongDB shell是一个功能完备的Javascript解释器,可以运行Javascript程序.也可以用于连接MongoDB服务器,执行脚本,对数据库进行操作.类似于 ...

  5. MongoDB 入门之查询(find)

    MongoDB 入门之查询(find) 1. find 简介 (1)find的第一个参数决定了要返回哪些文档. 空的查询文档会匹配集合的全部内容.默认就是{}.结果将批量返回集合c中的所有文档. db ...

  6. MongoDB基础知识 02

    MongoDB基础知识 02 6 数据类型 6.1 null : 表示空值或者不存在的字段 {"x":null} 6.2 布尔型 : 布尔类型只有两个值true和false {&q ...

  7. MongoDB入门简介

    MongoDB入门简介 http://blog.csdn.net/lolinzhang/article/details/4353699 有关于MongoDB的资料现在较少,且大多为英文网站,以上内容大 ...

  8. mongodb入门教程二

    title: mongodb入门教程二 date: 2016-04-07 10:33:02 tags: --- 上一篇文章说了mongodb最基本的东西,这边博文就在深入一点,说一下mongo的一些高 ...

  9. mongodb入门教程

    title: mongodb入门教程 date: 2016-04-06 14:47:18 tags: --- 为什么要认识呢,因为这玩意就一傻逼 借用一下百科的介绍 MongoDB 是一个介于关系数据 ...

随机推荐

  1. mysql中varbinary、binary、char、varchar异同

    binary 与 varbinary 类型和char与varchar类型是相似的,只是他们存储的是二进制数据,也就是说他们是包含字节流而不是字符流,他们有二进制字符的集合和顺序,他们的对比,排序是基于 ...

  2. 根据时间获取最新数据 SQL(每一个人或者每一项)

    -- 方法1 select a.* from table1 a from table1 b where b.name=a.name and b.gdtime>a.gdtime) -- 方法2 s ...

  3. java File linux windows 下 绝对路径 相对路径问题

    前言 当前项目目录 windows 为  E:\project\testpro\ linux 为  /project/testpro/ Windows环境下获取绝对路径情况 使用 a/b/c 为路径, ...

  4. java将doc文件转换为pdf文件的三种方法

    http://feifei.im/archives/93 —————————————————————————————————————————————— 项目要用到doc转pdf的功能,一番google ...

  5. android设置GridView高度自适应,实现全屏铺满效果

    使GridView每个item的高度自适应拉伸,达到整个GridView刚好铺满全屏的效果. public static void setGridViewMatchParent(GridView gr ...

  6. javascript小技巧[转]

    总的来说,如果你要找js 的东西,而不看这两篇的话,肯定要多花好多时间!!哈哈!! 如果你找的javascript的东西的话,建议你 ctrl+F  直接在这个页上找,因为这里80%有你要找的,但是要 ...

  7. QT:QObject 简单介绍

    QObject 是所有Qt对象的基类. QObject 是Qt模块的核心.它的最主要特征是关于对象间无缝通信的机制:信号与槽.使用connect()建立信号到槽的连接,使用disconnect()销毁 ...

  8. 【Python】【Flask】前端调用后端方法返回页面

    后端代码: @app.route("/test",methods=['POST','GET']) def test(): return "我是测试的" 前端代码 ...

  9. linux自动启动的示例

    linux作为服务器,经常希望一启动即可提供服务,以下命令为程序启动时,启动lhx用户下的程序: echo "su – lhx -c \"这里写入你的启动命令,Python建议使用 ...

  10. Java Decompiler Plugin For Eclipse IDE

    1. 下载JAD , 1.5.8版本的jad在 http://www.softpedia.com/progDownload/JAD-Download-85911.html 将展开后的jad.exe放到 ...