一.使用前的准备(windows下的安装) 

1.下载

目前MongoDB的官网不知道问什么不能进行下载了,但是可以在MongoDB中文论坛进行下载,

地址如下:http://www.mongoing.com/mongodb-downloads

2.安装

我下载的是msi版本的软件,安装过程中选择自定义方式,可以改变安装的位置,我的安装路径如下:

安装完成后会出现如下的文件

3.启动MongoDB

打开cmd,进入安装好的MongoDB的bin目录执行如下命令:

下面的--dbpath 后的参数就是存放数据的文件夹

4.还可以把MongoDB安装成windows服务,可以参考园子里面一个大神的做法:http://www.cnblogs.com/lzrabbit/p/3682510.html

有点不同的是我看了大神的文章:因为我是第一次安装,所以直接写了下面的命令就安装好了

D:\MongoDB\bin>mongod.exe --dbpath D:\MongoDBData --logpath=D:\MongoDBLog\mongod

b.log --logappend --install

然后就可以在管理工具中的服务中查看我们安装的MongoDB服务了

5.启动数据库服务的配置文件

Mongodb在windows下通过配置文件配置和访问

Mongodb启动命令mongod参数说明

6.通过cmd启动mongodb的客户端

启动客户端就可以操作数据库了,下面就是一些基本的操作。

二.使用Mongodb

①创建一个数据库

use[数据库的名字]

这个时候如果什么都不做,直接退出的话,这个新创建的数据库就会被删除

②给数据库添加一个集合,并在集合当中添加一条记录

Db.[文件名].insert({...})

> db.Student.Insert({name:"Stu1",age:"15"}) 

③查看所有的数据库

Show dbs

> show dbs

admin        (empty)
local 0.078GB
mongoDBTest 0.078GB

④查看数据库中的所有文档

Show collections

> show collections
Student
system.indexes

  

⑤查看指定文档的数据

查询所有的数据: db.[文件名].find()

查询第一条数据: db.[文件名].findOne()

> db.Student.find()
{ "_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"), "name" : "Stu1", "age" : "15" }
{ "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }
> db.Student.findOne()
{
"_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"),
"name" : "Stu1",
"age" : "15"
}
>

⑥更新文档数据(两种方式) 

1)全更新掉,就是把原来的数据进行覆盖

方法:

db.[文件名].update({查询条件},{更新内容})

例:

1.先查看一下文件中的记录,这里有两条

2.创建一个变量,将第一条记录赋给它

3.进行数据更新

4.更新后查看变量和更新后的记录

5.结果,被覆盖了,原来那条数据不见了

2)使用set修改器

db.[文件名].update({查询条件},{$set:{更新内容}})

例如我修改上面那个 Name=Stu1 age=15 的骚年,把他的年纪改成20岁

> db.Student.update({name:"Stu1"},{$set:{age:"20"}})

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

> db.Student.findOne()

{

        "_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"),

        "name" : "Stu1",

        "age" : "20"

}

> 

和sql语句当中的

update 表名 set age=20 where Name="Stu1" 差不多

⑦删除文档中的数据

db.[文件名].remove({…...})

> db.Student.remove({job:"Student"})
WriteResult({ "nRemoved" : 1 })
> var s = db.Student.find()
> s
{ "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }
> 

⑧删除数据库的文件

db.[文件名].drop()

⑨删除数据库

db.dropDatabase()

补充:

查看mongodb的方法

db.help()使用这个函数可以查看

数据集合命名规范注意点:

可以给集合起名为 db-test 但是这样的名字,使用db.[文件名]就会出错

要使用db.getCollectio("文件名")才可以

例子:

> db.db-test.insert({name:"123"})
2016-03-01T11:41:30.032+0800 ReferenceError: test is not defined
> db.getCollection("db-test").insert({name:"123"})
WriteResult({ "nInserted" : 1 })

  

mongoDB的shell自带javascript引擎,所以可以在shell中编写javascript函数

例子:

> function insert(object){ db.getCollection("Student").insert(object); }

> insert({name:"xxxxx"})

> db.getCollection("Student").find()

{ "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }

{ "_id" : ObjectId("56d51208dac7a0ad749f16c2"), "name" : "xxxxx" }

>

三、总结

刚刚学习了Mongodb的基本操作,其中有些东西要学习一下

1.我们看到我们创建一个集合的时候,Mongodb会自动生成一个system.Indexs的集合

2.每一条记录当中,都会自动生成一个key/value,_id和objectId

3.每次我插入数据,使用了类似JSON的东西,那个叫做BSON,可以理解是对JSON的扩展

MongoDB的安装和基本操作的更多相关文章

  1. MongoDB 的安装和基本操作

    MongoDB 的安装 使用 docker 安装 下载镜像: docker pull mongo:4.4.8(推荐,下载指定版本) docker pull mongo:latest (默认下载最新版本 ...

  2. MongoDB的安装、基本操作

    此说明文档针对的community版本是v4.2.0(1)下载下载官网,此时的community版本是v4.2.0https://www.mongodb.com/download-center/com ...

  3. Linux系统下MongoDB的简单安装与基本操作

    这篇文章主要介绍了Linux系统下MongoDB的简单安装与基本操作,需要的朋友可以参考下   Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备 ...

  4. MongoDB的安装配置、基本操作及Perl操作MongoDB

    MongoDB的安装配置.基本操作及Perl操作MongoDB http://www.myhack58.com/Article/60/63/2014/42353.htm

  5. MongoDB与RoboMongo的安装+python基本操作MongoDB

        MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业.各个行业以及各类应用程序的开源数据库.作为一个适用于敏捷开发的数据库,MongoDB的数据 ...

  6. mongodb(二) 安装和使用

    mongodb的安装和使用 最近的项目需要使用到mongodb,从而开始熟悉nosql,有了本篇文章,记录和方便他人. mongodb的安装 下载地址:http://www.mongodb.org/d ...

  7. mongoDB的安装及基本使用

    1.mongoDB简介 1.1 NoSQL数据库 数据库:进行高效的.有规则的进行数据持久化存储的软件 NoSQL数据库:Not only sql,指代非关系型数据库 优点:高可扩展性.分布式计算.低 ...

  8. python操作三大主流数据库(7)python操作mongodb数据库①mongodb的安装和简单使用

    python操作mongodb数据库①mongodb的安装和简单使用 参考文档:中文版:http://www.mongoing.com/docs/crud.html英文版:https://docs.m ...

  9. MongoDB文档的基本操作

    1. MongoDB的安装方法 (1)下载MongoDB 相应的版本: (2)设置数据文件和日志文件的存放目录: (3)启动MongoDB服务: (4)将MongoDB作为服务启动. 2. Mongo ...

随机推荐

  1. 【Android 开源】:最火的Android开源项目 第01期

    GitHub在中国的火爆程度无需多言,越来越多的开源项目迁移到GitHub平台上.更何况,基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要.利用这些项目,有时能够让你 ...

  2. (转载)c库不正确问题

    (转载)http://blog.csdn.net/piratejk/article/details/6115748 在linux下面变成,有时候在一个发行版本上编译通过,并且可以运行,但是将程序拷贝到 ...

  3. 经典算法面试题目-翻转一个C风格的字符串(1.2)

    题目: Write code to reverse a C-Style String. (C-String means that "abcd" is represented as ...

  4. HDOJ 1004题 Let the Balloon Rise strcmp()函数

    Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...

  5. JavaScript高级程序设计42.pdf

    IE中的事件对象 要访问IE中的event对象有几种不同的方式,取决于指定事件处理程序的方法.在使用DOM0级方法添加事件处理程序时,event对象作为window对象的一个属性存在 wondow.e ...

  6. JavaScript高级程序设计26.pdf

    DOM操作技术 动态脚本 指得是页面加载时不存在,但将来的某一时刻通过修改DOM动态添加的脚本,跟操作HTML元素一样,创建动态脚本也有2种方式:插入外部文件和直接插入JavaScript代码 var ...

  7. fopen\fread\fwrite\fscanf\fprintf\fseek\feof\rewind\fgets\fputc等系列函数使用总结

    转载自:http://blog.csdn.net/xidianzhimeng/article/details/23541289 1 fopen 函数原型:FILE * fopen(const char ...

  8. HW4.31

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  9. [LeetCode] Decode Ways 解题思路

    A message containing letters from A-Z is being encoded to numbers using the following mapping: 'A' - ...

  10. spark高级排序彻底解秘

    排序,真的非常重要! RDD.scala(源码) 在其,没有罗列排序,不是说它不重要! 1.基础排序算法实战 2.二次排序算法实战 3.更高级别排序算法 4.排序算法内幕解密 1.基础排序算法实战 启 ...