运行mongod作为服务的多个实例

问题描述:

我尝试启动多个MongoDB实例作为服务。在命令行下,我可以启动多个Mongo实例,因为我首先在命令后附加“--install”,现在它作为服务运行。但现在我尝试添加“--install”二审,并得到一个错误:运行mongod作为服务的多个实例

第一个命令运行良好:

c:\data\bin\mongod --nohttpinterface --port 27201 --dbpath c:\data\cluster\db1 --master --logpath c:\var\log\mongodb_db1.log --serviceName MongoDB_1 --install

但第二个给出了一个错误:

c:\data\bin\mongod --nohttpinterface --port 28000 --dbpath c:\data\cluster\db2 --master --logpath c:\var\log\mongodb_db2.log --serviceName MongoDB_2 --install

错误:

Creating service MongoDB_2. Error creating service. Der Name wird bereits als Dienstname oder als Dienstinstanzname verwendet. (1078)

我认为MongoDB的使用内部服务名称是始终相同,而不同TH e显示servicename。但我不知道如何解决它?

有什么建议吗?

问候 刘若英

+1

可能重复的[Mongodb,分片和多个Windows服务](http://*.com/questions/3437173/mongodb-sharding-and-multiple-windows-services) – 2010-11-12 10:46:49

我遇到了同样的问题。我的解决方法是一种哈克,但它似乎工作:

  1. 使用monogd --install
  2. 打开注册表编辑器创建第一个mongod的服务,并导航到HKLM \系统\ CurrentControlSet \服务\ NameOfMongoService
  3. 出口此密钥
  4. 在文本编辑器中编辑导出的reg文件,更新服务名称和mongod参数。
  5. 导入reg(并可能重新启动)。

为了获得作为服务运行mongos我采取了不同的方法和使用INSTSRV和SRVANY从Windows NT资源工具包:

http://support.microsoft.com/kb/137890

这KB没有提到使用intstalling后SRVANY instsrv您必须在注册表中新创建的服务下添加Parameters子键。该密钥应包含一个名为“Application”的REG_SZ,其中应用程序的路径作为服务启动。

+2

它看起来像在http://*.com/questions/3437173/mongodb-sharding-and-multiple-windows-services中的解决方案更清洁。 – user426724 2010-12-30 19:31:51

您可以使用适当的命令行开关对第二个实例进行礼貌安装。刚刚阅读我的答案https://*.com/a/9273816/249992