Running MongoDB on Windows

将mongo安装在非系统盘

我不久前使用MongoDB,根据development box
从官网下载MongoDB,按照自己的需求下载不同版本,我下载的是 64-bit Zip文件。 .msi文件是安装到Program Files目录下的(默认),但是我更喜欢把安装文件(zip包)和数据库文件(创建数据库后生成)放在一起使而且不必使用Admin运行.

取出zip文件放到 c:\MongoDB

进入 c:\MongoDB,创建一个data子目录,进入并创建db子文件夹和log子文件夹,bin文件夹已经存在,最后
你的文件夹结构如下,

1
2
3
4
5
c:\mongodb
\bin
\data
\db
\log

配置 MongoDB

添加一个文件 c:\MongoDB\mongod.cfg包含以下内容

1
2
3
4
5
6
7
8
9
systemLog:
destination: file
path: c:\mongodb\data\log\mongodb.log
logAppend: true
storage:
dbPath: c:\mongodb\data\db
net:
bindIp: 127.0.0.1
port: 27017

logdb的路径还有端口号都是默认,需要改变也很容易。注意ip只绑定127.0.0.1,因为那是不安全的,所以我不想暴露在network上,更多配置选项 see the documentation.

测试MongoDB

运行以下命令

C:\MongoDb\bin>mongod.exe -f ..\mongod.cfg
然后在另一个 command window(win+R),运行服务确定他能成功运行。

当我connecting时出现以下错误,所以我关闭了服务

1
2
3
4
5
6
7
8
9
10
11
12
13
c:\MongoDb\bin>mongo
MongoDB shell version: 2.6.1
connecting to: test
> use admin
switched to db admin
> db.shutdownServer()
2014-06-10T14:28:35.567-0400 DBClientCursor::init call() failed
server should be down...
2014-06-10T14:28:35.571-0400 trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed
2014-06-10T14:28:36.579-0400 warning: Failed to connect to 127.0.0.1:27017, reason: errno:10061 No connection could be made because the target machine actively refused it.
2014-06-10T14:28:36.579-0400 reconnect 127.0.0.1:27017 (127.0.0.1) failed failed couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed
> exit
bye

将其作为一个service安装

我们现在知道我们的配置是正确的,所以我想去安装一个service让他总是运行

启动一个 Administrator command prompt(拥有管理员权限)

win7 :win+R 进入cmd ,之后按住 CTRL+SHIFT+ENTER

win8:WIN+X 之后按A

现在运行命令

sc.exe create MongoDB binPath="C:\MongoDB\bin\mongod.exe --service --config=C:\MongoDB\mongod.cfg" DisplayName="MongoDB 2.6 Standard" start="auto"
你应该看到

[SC] CreateService SUCCESS
现在你可以根据以下命令开启和关闭服务(如果不能启动,手动开启服务 任务管理器-服务)

1
2
net start MongoDB
net stop MongoDB

如果你想卸载服务

sc.exe delete MongoDB

原文连接