MongoDB添加到WINDOWS服务自动启动

将mongodb安装为windows服务非常简单只需要在上面执行的命令行后添加 --install即可

mongod --dbpath D:MongoDBdata --install

按照正常的剧情,应该服务就安装成功了,但是很不幸,出现下面提示

--install has to be used with --logpath

按照提示,我们需要指定log目录,所以我们创建log目录D:MongoDBlogs 然后重新执行命令

mongod --dbpath D:MongoDBdata --logpath=D:MongoDBlogsmongodb.log --logappend

但是提示还是没有指定日志路径,几经折腾发现这是2.6版本的一个bug,将会在下一个版本修复,然后我们有两个选择,一个选择是使用上一个版本2.4.9,另一个选择是先用2.4.9版本安装成功服务,然后在升级到2.6(肿么升级?直接用2.6版本替换掉对应2.4.9版本的文件),那我们还有其他的选择吗,答案当然是肯定的,使用sc命令创建服务,使用net start启动服务

sc create MongoDB binPath= "D:MongoDBinmongod.exe --service --dbpath D:MongoDBdata --logpath=D:MongoDBlogsmongodb.log  --logappend"
net start MongoDB
 
在命令行执行:
 
mongod --logpath D:MongoDblogsMongoDB.log --logappend --dbpath D:data --directoryperdb --serviceName MongoDB --install --auth
 
绿字部分是数据库日志和数据库文件存放的路径,请确保已经存在。
 
红字--auth这个参数的意思是服务将开启权限认证,加上这个参数才不会被别人随意打开你服务器上的MongoDB数据库。
 
 
 
 
顺便说一下如何删除Windows服务:
 
首先在服务设置里把当前的MongoDB服务停止。
 
然后在命令行运行(当前路径随便在哪里都可以): sc delete MongoDB
 
这样之前安装的服务就会被删除。
MongoDB添加到WINDOWS服务自动启动
 
 

配置文件和相关目录建好后使用如下方式启动MongoDB

  • 普通启动
    mongod --config D:MongoDBetcmongodb.conf
  • 安装为Windows服务
    注:2.6版 这种方式在win7、win8 64位版无法安装成功,其他系统未测试
    mongod --config D:MongoDBetcmongodb.conf --install
  • 使用SC安装为Windows服务
    sc create MongoDB binPath= "D:MongoDBinmongod.exe --service --config=D:MongoDBetcmongodb.conf"

这里需要注意下当指定了日志文件后,无论使用配置文件指定还是在命令行指定,日志就都会输出到指定的日志文件去了,在命令行界面将看不到任何日志输出

原文地址:https://www.cnblogs.com/oceanden/p/5078813.html