一.使用前的准备(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. oracle 读取最大值sql

    select * from table a1 where rowid = ( select max(rowid) from table a2 where a2.id_subject_cost=a1.i ...

  2. UIImagePickerController 如何显示中文界面

    1: 添加中文的 Localizations Project --> Info --> Localizations  添加 "Chinese(Simplified)" ...

  3. 【转】Fragment和Activity

    原文网址:http://www.cnblogs.com/mengdd/archive/2013/01/11/2856374.html Fragment和Activity的交互 一个Fragment的实 ...

  4. Modifying the ASP.NET Request Queue Limit

    Modifying the ASP.NET Request Queue Limit When ASP.NET is queried, the request for service is carrie ...

  5. HW4.15

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

  6. How to Validate XML using Java

    Configure Java APIs (SAX, DOM, dom4j, XOM) using JAXP 1.3 to validate XML Documents with DTD and Sch ...

  7. 浙大PTA - - 堆中的路径

    题目链接:https://pta.patest.cn/pta/test/1342/exam/4/question/21731 本题即考察最小堆的基本操作: #include "iostrea ...

  8. jquery-data的三种用法

    1.jquery-data的用处 jQuery-data主要是用来存储数据,帮助普通对象或者jQuery对象来存储数据,其实如果单纯的储存dom的单一的属性,用attr自定义属性足够了:如果存储多个键 ...

  9. extjs6.0点击grid一行数据显示在一端的form中

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. inline-block元素之间出现间隙

    一.问题 这里部分的组成是一个input框和一个a按钮,然后a标签为了设置它的width和height我让他display:inline-block(行内元素以块级元素显示内容).神奇的一幕出现了,两 ...