一念起: 由于本人 用的电脑比较老旧,所以一直用的 是win7 32bit 的操作系统,但是在学习MongoDB的时候 遇到了起步的第一个问题,按照目前 官网最新版MongoDB 3.4.3,已不支持 32bit 的安装,所以就能那么一帆风顺的安装上了,所以 查了网上各路资料,总算披荆斩棘,搞定了,安装上了;所以 起一念 写个博客做下记录,也为遇到同样问题的同学们 提供一下解决方案。

1》 下载支持 32bit 的MongoDB版本

  Method1: MongoDB官网 下载  支持win 32bit 的版本 MongoDB;

  *1:进入官网

  

win2012支持的mongodb mongodb32位_Server

  *2:寻找 支持win 32bit 的 MongoDB 版本(这是 版本3.2.12)

  

win2012支持的mongodb mongodb32位_win2012支持的mongodb_02

   *3:下载成功

  

win2012支持的mongodb mongodb32位_mongodb_03

 

Method2: 直接通过连接下载(这是版本3.2.4 地址:http://downloads.mongodb.org/win32/mongodb-win32-i386-3.2.4-signed.msi) 

  *1: 下载成功

  

win2012支持的mongodb mongodb32位_mongodb_04

 

2》 安装 MongoDB

  

win2012支持的mongodb mongodb32位_官网_05

  

win2012支持的mongodb mongodb32位_mongodb_06

 

选择安装方式: Complete方式, Custom(自定义方式 本人比较中意)

  

win2012支持的mongodb mongodb32位_Server_07

   

win2012支持的mongodb mongodb32位_win2012支持的mongodb_08

  

win2012支持的mongodb mongodb32位_官网_09

   点击 

win2012支持的mongodb mongodb32位_Server_10

 

  

win2012支持的mongodb mongodb32位_官网_11

点击

win2012支持的mongodb mongodb32位_mongodb_12

,然后等待......

 

  

win2012支持的mongodb mongodb32位_官网_13

点击 

win2012支持的mongodb mongodb32位_Server_14

,找到 一下安装位置,查看是否安装成功

 

  

win2012支持的mongodb mongodb32位_官网_15

ok, 安装成功;

 

3》 启动 MongoDB

*1:创建数据库文件的存放位置,比如E:\mongodb\data\db。启动mongodb服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功。

  

win2012支持的mongodb mongodb32位_Server_16

*2:打开cmd(windows键+r输入cmd)命令行,进入到 安装目录的 bin目录(我的是 D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin)

或者,在安装目录 bin文件夹下(shift+右键+在此处打开命令窗口),直接进入到 bin目录

  

win2012支持的mongodb mongodb32位_官网_17

*3:输入如下的命令启动mongodb服务:

  >D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>mongod --dbpath E:\mongodb\data\db

注意了,问题来了,storageEngine报错  (如图)

  

win2012支持的mongodb mongodb32位_官网_18

  认真读后,发现问题所在 --> storageEngine报错 

  (

    原因表述:

    在2015/3/17以前,MongoDB只有一个存储引擎,叫做MMAP,MongoDB3.0的推出使得MongoDB有了两个引擎:MMAPv1和WiredTiger。

      * MMAPv1:适应于所有MongoDB版本,MongoDB3.0的默认引擎

      * WiredTiger:仅支持64位MongoDB

    MongoDB两种引擎可以互相切换,我们可以在创建服务的时候指定引擎类型。

    (所以默认的储存引擎并不支持32位!!!不支持32位!!!不支持32位!!!------>重要的事情说3遍)

  )

  解决办法:

  重新运行命令,只不过 这回我们要在 后边再加一条 引擎参数 选择

  命令如下:

  >D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>mongod --dbpath E:\mongodb\data\db --storageEngine=mmapv1

   看到如下 信息,即为成功:

  

win2012支持的mongodb mongodb32位_官网_19

  测试一下,我们可以访问: http://localhost:27017/, 看到如下 信息 即为成功

  

win2012支持的mongodb mongodb32位_Server_20

4》   当mongod.exe被关闭时,mongo.exe 就无法连接到数据库了,因此每次想使用mongodb数据库都要开启mongod.exe程序,所以比较麻烦,


  为了方便 不用每次都自己手动启动MongoDB服务,建议 将MongoDB 设置成 Windows服务,这样,每次开机MongoDB就会自动启动了。

  *1:首先

  在 E:\mongodb 目录下,与data 同级目录内 创建 mongodb.config 文件,

  在 E:\mongodb\data 目录下,与db 同级目录内 创建 log文件夹, 并在log文件夹下 创建 mongodb.log文件

  (如下图)

  

win2012支持的mongodb mongodb32位_官网_21

  

win2012支持的mongodb mongodb32位_win2012支持的mongodb_22

 

  mongodb.config 文件内容为:

 

dbpath=E:\mongodb\data\db
  logpath=E:\mongodb\data\log\mongodb.log

  如图:

  

win2012支持的mongodb mongodb32位_mongodb_23

 

*2:然后

  用管理员身份打开cmd命令行,进入MongoDB安装目录的 bin目录下(我的是D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin) ,输入如下的命令:

 

>D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>mongod --config E:\mongodb\mongodb.config

  也可以是命令(这样 就直接给加入到 Windows的服务起了个名字 还是挺有用的):

 

>D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>mongod --config E:\mongodb\mongodb.config  --install --serviceName "MongoDB"

  如图结果存放在日志文件中,查看日志发现已经成功。如果失败有可能没有使用管理员身份,遭到拒绝访问。

 

*3:查看 是否已加入到自启动:

  打开cmd输入services.msc查看服务可以看到MongoDB服务,点击可以启动:

  

win2012支持的mongodb mongodb32位_win2012支持的mongodb_24

  

win2012支持的mongodb mongodb32位_Server_25

  双击 进入:

  

win2012支持的mongodb mongodb32位_mongodb_26

 

  点击启动,MongoDB服务 就启动了;

  再 开机的时候 就会自启动了;

*4:此时也可以 直接用命令 控制 MongoDB的 开启和关闭了:

    启动MongoDB服务 命令:

  

>D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>net start MongoDB

win2012支持的mongodb mongodb32位_mongodb_27

    关闭MongoDB服务 命令:

   

>D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>net stop MongoDB

  

win2012支持的mongodb mongodb32位_mongodb_28

    删除MongoDB进程  命令:

   

>D:\_jcyTools-PACKAGE\MongoDB\Server\3.2\bin>mongod --dbpath "E:\mongodb\data\db" --logpath "E:\mongodb\data\log\mongodb.log"  --remove --serviceName "MongoDB"      (删除,注意不是--install了)

 

 

 

 

  

本文来自博客园,作者:驸马爷,转载请注明原文链接: