一.使用前的准备(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. Docker在云环境中的应用实践初探:优势、局限性与效能评测

    作者 商之狄 发布于 2014年11月10日 本文依据笔者所在团队的一些近期开发和应用的实践,整理出一些有意义的信息,拿出来和社区分享.其中既包括在云端应用Docker与相关技术的讨论,同时也有实施过 ...

  2. (转载)LINUX UNBUNTU10.04 下 搭建OC编译环境

    (转载)http://blog.sina.com.cn/s/blog_833996210100rgl4.html 1安装 / install GNUstep on ubuntu 下面列出来的包是安装G ...

  3. 基于WCF大型分布式系统的架构设计

    在大型系统中应用中,一个架构设计较好的应用系统,其总体功能肯定是由很多个功能模块所组成的,而每一个功能模块所需要的数据对应到数据库中就是一个或多个表.而在架构设计中,各个功能模块相互之间的交互点 越统 ...

  4. HDOJ/HDU 1328 IBM Minus One(水题一个,试试手)

    Problem Description You may have heard of the book '2001 - A Space Odyssey' by Arthur C. Clarke, or ...

  5. 有7g和2g的砝码各一个,怎样称可以3次把140g东西分为50g和90g???????

    第一次:等分 50和90为   70 70 2.   7g 和2g  ,取出一个70中的9g   ,  61   70 3.利用 9g和2g砝码,取出61中的11克,前面的9 和 11 都放进70

  6. poj 1654 Area(多边形面积)

    Area Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 17456   Accepted: 4847 Description ...

  7. uva 3523 Knights of the Round Table

    题意:给你n,m n为有多少人,m为有多少组关系,每组关系代表两人相互憎恨,问有多少个骑士不能参加任何一个会议. 白书算法指南 对于每个双联通分量,若不是二分图,就把里面的节点标记 #include ...

  8. HTML5 Canvas核心技术—图形、动画与游戏开发.pdf6

    操作图像的像素:getImageData() putImageData() ImageData对象 调用getImageData()方法实际是获取了一个指向ImageData对象的引用,返回的对象包含 ...

  9. MyEclipse中Web项目的发布和运行

    1.右键对应项目的名称:MyEclipse|Add and Remove Project Deployments... 2.点击Add按钮,选择Tomcat7.x,Deploy type选择Explo ...

  10. 设置button 不可被点击

    mGetCode.setEnabled(false);//不可被点击 mGetCode.setEnabled(true);//可被点击 bt.setClickable(true);//设置点击为tru ...