转自“简时空”:《将MongoDB设为Windows服务》
1、前言
MongoDB 安装、配置完后,必须先启动它,然后才能使用它。通常有3中方式来启动数据库实例:① 通过命令行方式;② 通过配置文件方式 ; ③ 通过Daemon方式;
网上也有很多这类的教程,比如《Mongodb后台daemon方式启动》、《MongoDB在windows下安装配置》等。不过各种资料参差不齐,所以我这里重新将其整理出来,以备查找。
2、Windows下使用“服务”实现Daemon方式
这里主要讲解“通过Daemon方式”启动的步骤,这是因为按上面的 ①、② 方式在前台启动 MongoDB 进程,此时若 session 窗口不小心关闭时,MongoDB 进程也将随之停止,这是非常不安全的。
幸好MongoDB 提供了一种后台 Daemon 方式启动的选择,只需加上一个 ”--fork” 参数即可,这就使我们可以更方便的操作数据库的启动。不幸的事,fork参数是Linux参数,并非是Windows参数或者mongod命令(参见《mongodb fork in windows》)。在Windows下可以使用“服务”来取代fork功能。
【注意】如果用到了”--fork”参数就必须也启用 ”--logpath” 参数,这是强制的。
3、配置步骤
下面,我们使用 配置文件方式 [2]将MongoDB安装成Windows服务[1],[3]:
① 建立日志文件,比如 F:\mongodb\logs\mongodb.log
② 建立数据库目录,比如 F:\mongodb\tsang
③ (可选)建立mongod进程的PID的文件,比如 F:\mongodb\logs\pid.txt
④ 建立配置文件, F:\mongodb\mongodb.cfg ,内容如下:
logpath=F:\mongodb\logs\mongodb.log logappend=true dbpath=F:\mongodb\tsang directoryperdb=true pidfilepath=F:\mongodb\logs\pid.txt
配置文件的后缀名可以自定义,不一定非得. cfg
⑤ 使用管理员身份启动cmd,并切换到mongodb的bin目录下:
⑥ 输入以下命令,在win7中安装MongoDB服务:
mongod --config F:\mongodb\mongodb.cfg --install
⑦ 启动MongoDB服务:
net start MongoDB
这样MongoDB就可以随系统启动了,“妈妈再也不用担心我意外关闭MongoDB啦”!
在“运行”(Win+R)中,输入 services.msc 可以验证其已经正确启动。
4、注意事项
1、 经常会出现不能正确安装的现象,导致在输入 net start MongoDB 时提示不能启动程序,这基本上是上面配置文件写错了所导致的——往往把诸如F:\mongodb\logs\mongodb.log 这样长而复杂的路径写错,建议拷贝而不是手敲输入 。
2、使用配置文件的好处是,如果想修改配置项,可以直接在配置文件中修改将自动生效,非常方便
3、另外,如果某天想卸载此项服务了,可以这么做:
net stop MongoDB mongod --remove sc delete MongoDB
5、参考文献
[1]. MongoDB官网. 《Install MongoDB on Windows》
[2]. MongoDB官网. 《Configuration File Options》
[3]. webiyo.《Install MongoDB Service on Windows 7》. 2011-5-11