如果意外停止,我想通过nodejs重启mongodb(代码在.bat文件中)。
是否有任何模块可以完成这项工作?
答案 0 :(得分:2)
install MongoDB as a Windows Service而不是从.bat文件运行会好得多。
然后您可以使用正常的服务功能,例如自动启动和恢复。
答案 1 :(得分:2)
根据您最近的两条评论,您应该注意一些事项。
由于存在锁定文件,因此无法重新启动mongo Windows服务。由于mongod正在尝试自动重启,因此CPU会增加。
当mongod进程/服务被不正常关闭时,数据路径下会有一个锁文件。在数据目录上执行dir
,我相信您会在那里找到锁定文件mongod.lock
。
您无需重启PC,只需删除锁定文件(您可能需要禁用该服务)并重启服务。
有两个与Windows上的重新启动行为相关的SERVER票证 -
Ticket 3582 - 此版本(不再发生mongod
的自动重启)从版本2.1.0开始。 2.1.x是开发分支。
MongoDB 2.2.0-rc0最近发布,可以进行测试了。它是2.1.x开发系列的高潮。
2.2发行说明: http://docs.mongodb.org/manual/release-notes/2.2
下载: http://www.mongodb.org/downloads
更改日志: https://jira.mongodb.org/browse/SERVER/fixforversion/11218
Ticket 2,目前正处于规划阶段,将是一个长期修复。