MongoDB——基础入门

MongoDB是目前比较流行的一种非关系型数据库(NoSql),他的优势这里不废话,我们关注怎么使用它。

安装

  1. 下载,首先肯定要去下载,我们去官网下载,在国内,可能没翻墙可能会没办法显示下载的按钮,那样子可以到我的百度网盘去下载我正使用的3.0.6版本

  2. 安装,下载到“mongodb-win32-x86_64-2008plus-ssl-3.0.6-signed.msi”文件后运行,把MongoDB安装到你想要安装的路径,默认是在D:\Program Files\MongoDB\Server\3.0,你可以在安装的时候选择customer的安装方式来选择自己想要安装的路径。

  3. 建立一个存放数据库的文件夹,我选择在MongoDB安装目录下的根目录加入一个名为db的文件夹,路径为:“D:\Program Files\MongoDB\Server\3.0\db”,这个没有固定要求。

  4. 启动,打开一个“命令指示符”窗口(可以使用win+R,输入cmd),首先进入MongoDB安装的目录下的bin文件夹里,也可以在环境变量里面加入MongoDB安装的目录下的bin文件夹路径(我就是这样做的),然后用下面的命令来设置数据库路径并启动MongoDB

     mongod --dbpath {数据库路径路径}

    比如:

     D:\Program Files\MongoDB\Server\3.0\bin>mongod --dbpath "D:\Program Files\MongoDB\Server\3.0\db"

    实际效果图如下:



    拉到最下面可以看到一行提示

     2015-10-09T10:01:52.344+0800 I NETWORK  [initandlisten] waiting for connectionson port 27017

    表示MongoDB已经安装成功,并监听者27017端口,端口可以使用mongod命令的时候设置,更多关于mongod参数,可以输入

     mongod -h

    来查看

基本操作

增删改查实一个数据库必备的操作,接下来我们就说说怎么在shell下进行增删改查。

我们另外打开一个“命令指示符”窗口(注意:之前的不能关闭),输入mongo打开MongoDB的shell,这个shell就是MongoDB的客户端

D:\Program Files\MongoDB\Server\3.0\bin>mongo
MongoDB shell version: 3.0.6
connecting to: test
>

默认连接的数据库是“test”

  1. 增操作

    我们来增加一个名为“Person”的集合(可以理解为数据库表)

     > db.Person.insert({"name":"张三", "age":10})
    WriteResult({ "nInserted" : 1 })
    > db.Person.insert({"name":"李四", "age":20})
    WriteResult({ "nInserted" : 1 })
    >
  2. 查操作

    条件查询:

     > db.Person.find({"name":"张三"})
    { "_id" : ObjectId("5617275737a5aa2cafdb4b84"), "name" : "张三", "age" : 10 }
    >

    查询全部:

     > db.Person.find()
    { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }
    { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
    >

    注意:大家发现了没有?集合中多了一个“_id”的字段,这个字段是默认加入的GUID,目的是保证数据的唯一性,在关系型数据库的时候,我们都会给表加一个主键,在MongoDB都可以省了自己加主键了。

  3. 更新操作

    update命令有两个参数,第一个是“查找的条件”,第二个是“更新的值”

     > db.Person.update({"name":"张三"}, {"name":"张三","age":40})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.Person.find({"name":"张三"})
    { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
    >
  4. 删除操作

     > db.Person.remove({"name":"张三"})
    WriteResult({ "nRemoved" : 1 })
    > db.Person.find()
    { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }
    >

将MongoDB安装到window服务里

  1. 创建一个存放数据库日志的文件夹,比如“D:\Program Files\MongoDB\Server\3.0\log”

  2. 在根目录下创建一个名为“mongod.cfg”配置文件,内容如下:

     systemLog:
    destination: file
    path: D:\Program Files\MongoDB\Server\3.0\log\mongod.log
    storage:
    dbPath: D:\Program Files\MongoDB\Server\3.0\db

    具体的配置参数,请到官网文档:http://docs.mongodb.org/manual/reference/configuration-options/

    注意:配置文件内容不能用“缩进符号”来对齐,在目前我使用的版本3.0.6会无法启动。

  3. 管理员权限打开一个“命令指示符”窗口,使用如下命令

     D:\Program Files\MongoDB\Server\3.0\bin>mongod --config "D:\Program Files\MongoD
    B\Server\3.0\mongod.cfg" --install D:\Program Files\MongoDB\Server\3.0\bin>

    具体的安装日志,我们打开我们“mongod.cfg”配置文件里设置的日志文件,路径“D:\Program Files\MongoDB\Server\3.0\log\mongod.log”,内容如下:

     2015-10-09T11:51:47.881+0800 I CONTROL  Trying to install Windows service 'MongoDB'
    2015-10-09T11:51:47.883+0800 I CONTROL Service 'MongoDB' (MongoDB) installed with command line '"D:\Program Files\MongoDB\Server\3.0\bin\mongod.exe" --config "D:\Program Files\MongoDB\Server\3.0\mongod.cfg" --service'
    2015-10-09T11:51:47.883+0800 I CONTROL Service can be started from the command line with 'net start MongoDB'

    吐槽:安装完后,没任何提示,这个用户体验做的不太好

  4. 启动MongoDB服务,启动方式:

    1. 在“命令指示符”窗口输入:

       net start MongoDB
    2. 通过window服务管理窗口启动

至此,打完收工。。。。。。。。。。。。。。。

MongoDB学习——基础入门的更多相关文章

  1. Mongodb最基础入门教程

      Mongodb最基础入门教程 如果想了解一下redis的入门教程,可以去看一下我的上一篇博客 Mongodb的安装大家可以参考一下其他博主的博客,这里我就不做介绍了.不过值得注意的是,在Linux ...

  2. MongoDB学习笔记(入门)

    一.文档的注意事项:1.  键值对是有序的,如:{ "name" : "stephen", "genda" : "male&quo ...

  3. MongoDB学习day07--mongoose入门,数据库增删改查,默认参数,模块化

    一.mongoose介绍 Mongoose 是在 node.js 异步环境下对 mongodb 进行便捷操作的对象模型工具. Mongoose 是 NodeJS 的驱动, 不能作为其他语言的驱动. M ...

  4. Scala学习——基础入门

    基础语法 1)注意点 1)区分大小写 -  Scala是大小写敏感的,这意味着标识Hello 和 hello在Scala中会有不同的含义. 2)类名 - 对于所有的类名的第一个字母要大写. 3)方法名 ...

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

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

  6. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  7. MongoDB for C#基础入门

    笔者这里采用的是mongoDB官网推荐使用.net驱动: http://mongodb.github.io/mongo-csharp-driver/2.0/getting_started/quick_ ...

  8. NOSQL学习笔记系列之MongoDB 一 基础

    主题:MongoDB 学习资料参考网址: 1.http://www.w3cschool.cc/mongodb/mongodb-tutorial.html 2.http://www.icoolxue.c ...

  9. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

随机推荐

  1. 修复 XE8 FMX TGridLayout 容器自动计算宽度及高度的问题

    说明:TGridLayout 提供计算容器内控件等分的功能: 横式(Orientation=Horizontal)可将 ItemWidth = -1(小于0则自动等分) 直式(Orientation= ...

  2. [moka同学笔记]Yii2.0显示页匿名函数设置$value

    匿名函数设置$value <?= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ // ['cl ...

  3. malloc和new的区别

    (1)malloc在C和C++中都可以使用,用来申请一段内存:申请的内存一定要用free释放,然后把指针置为null: new只能在C++中使用,用于动态内存分配:new的对象要delete掉: (2 ...

  4. Node.js包

     1.app.js 2.m_p包下package.json 3.index.js  入口模块

  5. GJM : Unity3D - UI - UI边缘流光特效小技巧 [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  6. Oracle 免费的数据库--Database 快捷版 11g 安装使用与"SOD框架"对Oracle的CodeFirst支持

    一.Oracle XE 数据库与连接工具安装使用 Oracle数据库历来以价格昂贵出名,当然贵有贵的道理,成为一个Oracle DBA也是令人羡慕的事情,如果程序员熟悉Oracle使用也有机会接触到大 ...

  7. SQL Server 行转列重温

    转载自http://www.cnblogs.com/kerrycode/ 行转列,列转行是我们在开发过程中经常碰到的问题.行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER ...

  8. 为友盟消息推送开发的PHP SDK(composer版):可以按省发Android push

    一直以来APP希望按省市县推送Android push,只能自己分析用户经纬度,打tag发送. 现在终于有服务商提供了. 友盟消息推送 可以“按省推送”,很方便. 我为友盟做了PHP SDK(comp ...

  9. css 属性选择器

    css2的属性选择器 1.[class~="flower"]:选中有flower的class class="flower ss" class="ss ...

  10. JavaScriptOO.com – 快速找到你需要的 JS 框架

    JavaScriptOO.com 集合了目前 Web 开发中最常用的422(截至目前)款 JavaScript 框架,你可以根据功能类别(Ajax,动画,图表,游戏等)进行过滤和排序,快速找到你需要的 ...