选择Mongo的关键是:这是一个 JSON 文档数据库。

1. Mongo 的术语

  • 文档:一条完整的数据就是一个文档(对应于 MySQL 的一行)。
  • 集合:一组文档构成一个集合。类似 MySQL 中表的地位,但不必要求这组文档的结构一致。
  • 数据库:与 MySQL 一样,mongo 也可以建立多个数据库。 用 use db_name 来切换。

db 和 collection 都是延时创建的。添加document时才会真正创建。

2. 安装与启动 Mongo

官网有详细说明。http://www.mongodb.org/downloads

启动 Mongo 前,需要先通过 Mongod 启动服务进程,然后通过另一个终端用 mongo 连接数据库。

注意点:

  1. 如果是 windows 下解压安装,解压目录不能包含空格。
  2. linux 下安装后,默认的 dbpath 是 /data/db,一般没有读写权限。无法启动 mongod。
  3. dbpath 默认需要10G 以上的存储空间。否则无法启动 mongod。

3. Mongo 配置

mongo 启动时,可以传入一组配置参数。

可以将这些参数写入文件中,比如 mongo.conf,然后通过 --config 参数指定配置文件,无需每次启动时输入配置参数。

4. MongoDB 注册为 Windows 服务

D:/mongodb/bin>mongod --logpath D:/mongodb/data/logs/mongodb.log --logappend --dbpath D:/mongodb/data/db --serviceName MongoDB --install

若显示 Service can be started from the command line via 'net start "MongoDB"' 表示服务创建成功。

windows 下可以通过 net start MongoDB 和 net stop MongoDB 来启动和停止 MongoDB

  • 日志文件:/logs/MongoDB.log,以追加的方式写入日志;
  • 数据文件目录:/data/db,每个DB都会新建一个目录;
  • Windows服务的名称:MongoDB。

-- install 参数改为 --remove 并指定 serviceName 则可以删除服务,默认 serviceName 为 MongoDB

D:/mongodb/bin>mongod --serviceName MongoDB --remove

5. 数据库的 CRUD

进入 mongo 交互界面以后,用 use db_name 来切换。如果数据库不存在,则创建(延时创建)。

启动 mongo 交互界面时,也可以指定数据库。如

$ mongo db_name

db 查看当前数据库

show dbs 查看所有数据库,当前所处的数据库若还未插入文档,则不会显示。

db.dropDatabase() 删除数据

6. 集合的 CRUD

db.book.insert({"Title": "a byte of python", "tag": "python"})  第一次插入时建立集合

show collections 查看所有集合

db.book.drop() 删除集合。

mongodb 入门笔记的更多相关文章

  1. mongodb入门笔记

    mongodb作为nosql中排名第一的数据库,近年来使用的人数越来越多,作为开发人员,非常有必要了解下mongodb数据库.下面就给大家介绍下mongodb数据库的基本知识,有不对的地方欢迎指正,Q ...

  2. MongoDB学习笔记:快速入门

    MongoDB学习笔记:快速入门   一.MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.M ...

  3. mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)

    最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...

  4. MongoDB学习笔记系列

    回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...

  5. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  6. ES6入门笔记

    ES6入门笔记 02 Let&Const.md 增加了块级作用域. 常量 避免了变量提升 03 变量的解构赋值.md var [a, b, c] = [1, 2, 3]; var [[a,d] ...

  7. [Java入门笔记] 面向对象编程基础(二):方法详解

    什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...

  8. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  9. redis入门笔记(2)

    redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...

随机推荐

  1. WPF 之 style文件的引用

    总结一下WPF中Style样式的引用方法. 一.内联样式: 直接设置控件的Height.Width.Foreground.HorizontalAlignment.VerticalAlignment等属 ...

  2. WPF/Silverlight Layout 系统概述——Measure(转)

    前言 在WPF/Silverlight当中,如果已经存在的Element无法满足你特殊的需求,你可能想自定义Element,那么就有可能会面临重写MeasureOverride和ArrangeOver ...

  3. AJAX全套

    AJAX概述 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 Java ...

  4. 移动的rem自适应

    (function (doc, win) { var docEl = doc.documentElement, //html resizeEvt = 'orientationchange' in wi ...

  5. Mac 下抓包工具 Charles 修改特定请求

    Charles 是 Mac 下常用的抓包工具,它通过将自己设置成系统的代理服务器,从而完成了抓包的工作. 同类的工具还有 fiddler 和 Wireshark,其中 fiddler 是微软公司使用 ...

  6. sphinx-2.2.10-1.rhel6.x86_64 rpm包安装的位置

    /etc/logrotate.d/sphinx /etc/rc.d/init.d/searchd/etc/sphinx/etc/sphinx/sphinx.conf/usr/bin/indexer/u ...

  7. c#入门实例

    1.概述 C#是一个语言,.net是一个平台,上面支持用C#或者VB.Net写代码 2.注释 若注释量较少用  //   开头,大量用   /*    */    表示 输出结果 3.命名空间 所谓n ...

  8. Visual Studio 扩展包(.vsix)制作

    前言:上篇介绍了 Visual Studio扩展工具添加与卸载,本编要介绍的是Visual Studio 扩展包(.vsix)的制作. 方法: ①.下载并安装Visual Studio 2010 SD ...

  9. VMware系统运维(十四)部署虚拟化桌面 Horzion View Manager 5.2 配置许可

    1.通过网页访问https://conntionserver.testad.local/admin,打开如下图所示页面:输入用户名密码 2.进来以后配置View 许可,点击"编辑许可证&qu ...

  10. 为DEDE织梦添加XMl网站地图

    在后台管理: 核心-频道模型-单页文档管理-增加一个新页面 模版文件放在你现在使用的templets目录下,sitemap.xml的内容如下 <?xml version="1.0&qu ...