MongoDB入门教程(一)

本文介绍了MongoDB的特性及优势,并详细说明了在Windows环境下MongoDB的安装过程,包括配置环境变量、启动服务端与客户端的方法。同时,还列举了一些常用的MongoDB命令。

MongoDB简介

MongDB是一个高性能,开源,无模式的文档型NosQL数据库。

主要功能特性:

1.文件存储格式BSON(一种json的扩展)
2.模式自由
数据格式不受限了表的结构
3.支持动态查询
4.支持完全索引
5.支持复制(其主从复制)和故障恢复
6.使用高效的二进制数据存储,包括大型对象
7.自动处理碎片,以支持云计算层次的扩展。
8.支持Java、Ruby、Python、C++、PHP等多种语言
9.内部支持Javascript

MongoDB的优势

1.查询速度快
2.高并发。可以达到2万个并发。
3.高容量。支持10TB意思的数据量
MongoDB使用场景
1.网站数据
2.缓存
3.大尺寸、低价值的数据
4.高伸缩的场景
5.用于对象以及Json数据存储

MongoDB限制

1.在32位操作系统上,不支持大于2.5G的数据
2.单个文件大小限制16M
3.高度事务的系统
4.传统商业智能应用

MongoDB与其他数据库区别

这里写图片描述

MongoDB安装

在这里,主要讲解的是win下安装,关于Linux下安装,随后会添加上。
下载网址:官方网站(https://www.mongodb.org/downloads/#production
在这里使用的是win32
这里写图片描述
笔者下载老长时间才下完,估计是个人网速问题,
这里写图片描述

这里写图片描述
这里写图片描述
安装好之后,安装目录下,发现有如下目录
这里写图片描述

配置path路径[可选]

配置path路径目的便于,直接可以再命令提示符输入mongoDB命令,不需要每次在切换到mongoDB的bin目录。在[我的电脑]右键,选择[属性]=>[高级系统设置]=>[高级]=>[环境变量设置]=>系统变量里面的[path]修改,添加mongoDB的bin目录,我添加的目录是’C:\Program Files\MongoDB\Server\3.2\bin’
操作步骤截图如下:
这里写图片描述

启动MongDB服务端

参照官方网站:https://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/#install-mongodb-community-edition
启动MongDB步骤如下

设置MongDB执行环境

官方原话如下:
Set up the MongoDB environment
1.MongoDB requires a data directory to store all data. MongoDB’s default data directory path is \data\db. Create this folder using the following commands from a Command Prompt:
md \data\db
mongoDB需要指定一个目录来存储数据。在win下在命令提示中,你可以使用md命令创建目录。在此,我将创建一个data目录和log目录,分别用于存放数据和日志。吐槽一下,感觉win下创建目录确实没有linux下方便。
这里写图片描述
此时该目录下创建目录如下
这里写图片描述

启动mongoDB(针对服务端)

官方原话如下:
To start MongoDB, run mongod.exe. For example, from the Command Prompt:
C:\mongodb\bin\mongod.exe
This starts the main MongoDB database process. The waiting for connections message in the console output indicates that the mongod.exe process is running successfully.
就是我们通过mongod.exe来启动mongoDB,启动了MongoDB主数据进程,如果出现等待连接的消息,则暗示着mongod.exe进程正在成功运行着。
好了,现在我们开始启动了。
启动命令如下:
mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data" --logpath="C:\Program Files\MongoDB\Server\log\mongodb.log" --port=27017
如果没有配置mongoDB的path目录,需要先切换到mongoDB的bin目录下或是使用C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe去执行。
解析:dbpath指定数据存放目录,可自行指定
logpath指定日志路径,可以自行指定
port指定端口号,默认的是27017

此时既然爆出如下错误
这里写图片描述
也就是说32位系统默认情况下没有开启日志记录功能,请使用–journal开启。
但是当我进入C:\Program Files\MongoDB\Server\log目录下时候,发现有日志,其内容如下:

016-04-28T21:42:47.003+0800 I CONTROL  [main] Hotfix KB2731284 or later update is not installed, will zero-out data files
2016-04-28T21:42:47.071+0800 I CONTROL  [initandlisten] MongoDB starting : pid=17916 port=27017 dbpath=C:\Program Files\MongoDB\Server\data 32-bit host=YEGZT8JOIIU2LKY
2016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] targetMinOS: Windows Vista/Windows Server 2008
2016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] db version v3.2.5
2016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] git version: 34e65e5383f7ea1726332cb175b73077ec4a1b02
2016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] allocator: tcmalloc
2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] modules: none
2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] build environment:
2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten]     distarch: i386
2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten]     target_arch: i386
2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] options: { net: { port: 27017 }, storage: { dbPath: "C:\Program Files\MongoDB\Server\data" }, systemLog: { destination: "file", path: "C:\Program Files\MongoDB\Server\log\mongodb.log" } }
2016-04-28T21:42:47.090+0800 I STORAGE  [initandlisten] exception in initAndListen: 28663 Cannot start server. The default storage engine 'wiredTiger' is not available with this build of mongod. Please specify a different storage engine explicitly, e.g. --storageEngine=mmapv1., terminating
2016-04-28T21:42:47.090+0800 I CONTROL  [initandlisten] dbexit:  rc: 100

这日志记录的跟,命令提示中提示的还不一样啊,怎么办?因为命令提示中,提示是因为日志没有开启造成的错误,而日志说引擎不合适。只能先一个尝试一下。那我不添加日志,执行如下命令
mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data" --port=27017
这里写图片描述
通过这个提示,看来这次确定了,是默认存储引擎不支持了。只好换一个引擎。执行如下命令:

mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data"  --logpath="C:\Program Files\MongoDB\Server\log\mongodb.log" -storageEngine="mmapv1" --port=27017  --journal

执行结果如下:
这里写图片描述
一直在等待连接中,此时我查看了一些log日志
这里写图片描述
看来是启动了。当然也可以在浏览器中输入http://localhost:27017 如果出现如下界面,代码安装成功。
这里写图片描述

连接MongoDB(针对客户端)

官方原话如下:
Connect to MongoDB.¶

To connect to MongoDB through the mongo.exe shell, open another Command Prompt.

C:\mongodb\bin\mongo.exe
If you want to develop applications using .NET, see the documentation of C# and MongoDB for more information.

要想连接MongoDB,需要打开另外一个命令提示符窗口,通过mongo.exe来建立连接。如果要使用 .NET开发应用,需要查看C#文档和其他MongoDB手册,来获取更多信息。

说白了,就是客户端通过mongo.exe来连接mongoDB。其实直接输入mongo也一样,当然我这里面出现了一些警告信息,暂时可以不去理会。
这里写图片描述

客户端连接mongoDB方式如下(里面的mongoDB也可以换成mongo.exe)
这里写图片描述

常用命令

1.db.help()
查看命令提示
这里写图片描述
2.db
查看当前所在数据库的名字
这里写图片描述
3.use命令
use+数据库名 表示切换或是创建数据库。和Mysql中use的唯一不同点,就是当数据库不存在的时候,MongoDB中的use可以创建数据库。
这里写图片描述
4.show dbs
显示数据库,需要注意的是show dbs,只会显示有数据的库,没有数据的库,是不会显示的。下图中,dqs数据库中,开始没有数据,所以不会显示,当我插入一条数据库后,show dbs 就会显示它。
这里写图片描述
5.db.dropDatabase()
删除当前数据。
删除之前
这里写图片描述
执行删除操作,删除之后,当前库不变化。
这里写图片描述
删除之后,数据库文件也没有了。
这里写图片描述
6.db.stats()
查看当前数据的状态
这里写图片描述
7.db.version()
查看mongoDB版本
8.db.getMongo()
查看当前连接机器的ip
这里写图片描述
9.mongoDB对支持JavaScript
因为mongoDB支持JavaScript,所以可以直接在命令提示中输入js代码。如下图
这里写图片描述

评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值