这几天在做一个简单的后台博客系统,数据库用到了 MongoDB ,虽说官方的文档比较全,但是对于我一个英语一般的人来说,或多或少在配置的时候出现了一些问题,总结了一下在安装及创建服务的过程
MongoDB 下载
首先当然是下载 MongoDB 了,这里是官网下载地址:
https://www.mongodb.com/download-center?jmp=nav#community
点击进入后会看到下载页面
我是个人用户,所以我就选择下载社区服务版了,下载的版本里有3个版本,我电脑是win10的,就下载第一个
MongoDB 安装
下载完成后就是安装了,官方的安装文档提供了2种安装方式:
官方文档传送门: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/
一种是通过直接点击下载的安装文件进行安装,另一种是通过命令提示符来安装,我是直接通过第一种方式安装的,打开软件
安装很简单,直接下一步就可以了,安装过程中,你可以通过点击 "Custom(自定义)" 按钮来设置你的安装目录。
创建数据目录
MongoDB 将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在根目录下((如: C: 或者 D: 等 )。
我默认在C:盘 安装了 mongodb,现在让我们创建一个 mongodb-data 的目录然后在 mongodb-data 目录里创建 db(数据库) 目录和 log(日志) 目录。
注:以下所有命令都请使用管理员身份打开命令窗口执行
cd c: //进入c盘根目录 mkdir mongodb-data //新建 mongodb-data 文件夹 cd mongodb-data //进入 mongodb-data 文件夹 mkdir db,log //分别创建 db(数据库) 文件夹,log(日志) 文件夹
当然也可以通过 windows 的资源管理器中创建这些目录,而不一定通过命令行。
创建后的目录结构
使用命令来启动 MongoDB 服务器
我的 MongoDB 路径 C:Program FilesMongoDB ,服务启动需 bin 目录下的 mongod.exe
'C:Program FilesMongoDBServer3.4inmongod.exe' --dbpath C:mongodb-datadb
注: bin 目录下的文件对应不同的功能
mongod.exe -- MongoDB 的服务,通常用作启动服务用
mongo.exe -- MongoDB 的客户端,使用命令工具查询操作数据库
若执行成功,将输出如下信息
2017-04-07T11:41:25.512+0800 I CONTROL [initandlisten] MongoDB starting : pid=14208 port=27017 dbpath=C:mongodb- 2017-04-07T11:41:25.513+0800 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2 2017-04-07T11:41:25.514+0800 I CONTROL [initandlisten] db version v3.4.3 2017-04-07T11:41:25.514+0800 I CONTROL [initandlisten] git version: f07437fb5a6cca07c10bafa78365456eb1d6d5e1 2017-04-07T11:41:25.514+0800 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1u-fips 22 Sep 2016 2017-04-07T11:41:25.514+0800 I CONTROL [initandlisten] allocator: tcmalloc 2017-04-07T11:41:25.515+0800 I CONTROL [initandlisten] modules: none 2017-04-07T11:41:25.515+0800 I CONTROL [initandlisten] build environment: 2017-04-07T11:41:25.515+0800 I CONTROL [initandlisten] distmod: 2008plus-ssl 2017-04-07T11:41:25.515+0800 I CONTROL [initandlisten] distarch: x86_64 2017-04-07T11:41:25.517+0800 I CONTROL [initandlisten] target_arch: x86_64 2017-04-07T11:41:25.518+0800 I CONTROL [initandlisten] options: { storage: { dbPath: "C:mongodb-datadb" } }
MongoDB服务启动成功后,运行 bin 目录下的 mongo.exe ,会看到如下信息
此时 MongoDB 启动成功
创建 MongoDB 的 windows 服务
通过上面的方法启动了 MongoDB 服务后,会有一个问题,每次启动服务都得使用
'C:Program FilesMongoDBServer3.4inmongod.exe' --dbpath C:mongodb-datadb
真的很不方便,于是我创建一个名为 mongodb 的 windows 服务,创建之前需要创建一个数据库的日志文件 mongodb.log ,使用命令窗口
cd C:mongodb-datalog //进入日志目录 touch mongodb.log //创建日志文件
创建完日志文件后,可以使用如下命令创建服务:
'C:Program FilesMongoDBServer3.4inmongod.exe' --bind_ip yourIPadress --logpath "C:mongodb-datalogmongodb.log" --logappend --dbpath "C:mongodb-datadb" --port yourPortNumber --serviceName "YourServiceName" --serviceDisplayName "YourServiceName" --install
参数说明:
--bind_ip: 绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地所有IP
--logpath: 定MongoDB日志文件,注意是指定文件不是目录
--logappend: 使用追加的方式写日志
--dbpath: 指定数据库路径
--port: 指定服务端口号,默认端口27017
--serviceName: 指定服务名称
--serviceDisplayName: 指定服务名称,有多个mongodb服务时执行。
--install: 指定作为一个Windows服务安装。
我使用下面的命令创建服务,我的服务名为 mongodb (注意是小写,方便每次启动服务的时候输入服务名)
'C:Program FilesMongoDBServer3.4inmongod.exe' --logpath C:mongodb-datalogmongodb.log --logappend --dbpath C:mongodb-datadb --serviceName "mongodb" --install
创建成功后,启动 MongoDB 服务,服务启动后,命令窗口可以关闭
net start mongodb //启动 MongoDB 服务 net stop mongodb //停止 MongoDB 服务
如需停止服务,可以使用 stop 命令来停止
由于我们已经制定了日志文件路径,所以在启动 MongoDB 服务的时候,不会在命令窗口中显示记录,如需查看 MongoDB 的日志,访问 C:mongodb-datalogmongodb.log 即可查看
至此, MongoDB 的安装基本完成
MongoDB 环境变量的设置
如果有时候我们需要在命令窗口中或是直接在 windows 的运行中执行 mongodb ,我们可以配置环境变量
在桌面 "我的电脑" 单击鼠标右键,打开属性,在系统界面选择 "高级系统设置"
进入"环境变量"
在 "系统变量" 中,选择 "Path",然后点击下方的 "编辑"
在 "编辑环境变量" 窗口中,点击新建,在最下面填入本地 MongoDB 的包含 bin 路径,点击确定
配置好环境变量后,可以直接在运行窗口执行 MongoDB 客户端,也可以在命令窗口中执行 mongo
执行成功
到这里,基本上 windows 下的 MongoDB 安装完成,至于常用的命令,后续我也会陆续更新