如何设置MongoDB,使其可以作为Windows服务运行?


当前回答

不像其他答案。

在系统重启/重新启动时自动启动服务

MongoDB安装

窗户

(1)安装MongoDB

(2)添加bin到路径

(3)创建c:\data\db

(4)创建c:\data\log

(5)创建c:\data\mongo .cfg

systemLog:
    destination: file
    path: c:\data\log\mongod.log
storage:
    dbPath: c:\data\db

(6)创建在重启时自动启动的服务。以管理员身份运行..

sc.exe create MongoDB binPath= "\"C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe\" --service --config=\"C:\data\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"

(7)启动服务。以管理员身份运行..

net start MongoDB

重要:即使显示“MongoDB服务已成功启动”,它也可能失败

要再次检查打开的控制面板>服务,确保MongoDB服务的状态为“Running”

如果不是,检查C:\data\log\mongo .log中的日志文件,找出失败的原因并修复它

(不要通过控制面板>服务启动MongoDB,使用..net start MongoDB

(8)最后,重新启动你的机器,运行MongoDB,重新启动时它仍将运行

如果你想杀死它…

net stop MongoDB

sc.exe delete MongoDB

其他回答

对于2.4.3版本(发布日期的当前版本),创建一个配置文件,然后执行以下命令:

C:\MongoDB\bin\mongo .exe——config C:\MongoDB\mongo .cfg——service

我发现你应该用install标志将:dbpath, config和logfile传递给mongod

例子:

mongod --dbpath=c:\data\db --config=c:\data\db\config.cfg --logpath=c:\data\db\log.txt --install 

注意:我的路径变量中有mongod path。

你可以通过以下方式控制服务:

net start mongodb
net stop  mongodb 

在Windows系统上编辑配置文件后,我不得不重新启动MongoDB (v4.4)服务。以下是我所做的:

按Win+R打开Run面板 输入“服务”。msc”,按“Enter” 搜索“MongoDB”-你可以按“m”跳转到它。 右键单击-选择“重新启动”

就是这样!

不仅——安装,

还需要——dbpath和——logpath

重启操作系统后,你需要删除“mongod”。手动锁”

经过几个小时的努力,我终于做到了。

确保:

您将<MONGODB_PATH>\bin目录添加到系统变量PATH中 以管理员身份运行命令提示符


步骤:

第一步:执行以下命令:

D:\mongodb\bin>mongod --remove

第二步:以管理员身份打开命令提示符后执行该命令:

D:\mongodb\bin>mongod --dbpath=D:\mongodb --logpath=D:\mongodb\log.txt --install

注意:你也可以在上面的命令后面附加——serviceName MongoDB。

这是所有!


After that right there in the command prompt execute:
services.msc

// OR

net start MongoDB

寻找MongoDB service并单击start。


注意:确保以管理员身份运行命令提示符。

如果你不这样做,你的日志文件(在上面的例子中是D:\mongodb\log.txt)将包含这样的行:

2016-11-11T15:24:54.618-0800 I CONTROL  [main] Trying to install Windows service 'MongoDB'
2016-11-11T15:24:54.618-0800 I CONTROL  [main] Error connecting to the Service Control Manager: Access is denied. (5)

如果你试图从非管理控制台启动服务(即net start MongoDB或start - service MongoDB在PowerShell中),你会得到这样的响应:

System error 5 has occurred.
Access is denied.

或:

Start-Service : Service 'MongoDB (MongoDB)' cannot be started due to the following error: Cannot open MongoDB service
on computer '.'.
At line:1 char:1
+ Start-Service MongoDB
+ ~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service],
   ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceComman