0

我正在尝试找到一种方法来拥有两个单独的本地托管 mongoDB 实例,这样一个数据库就不会影响另一个数据库。我尝试过使用不同的端口,但这仍然会导致一个数据库的更改影响另一个数据库,但两者都需要在本地托管。我在 mongodb.org 上看到我应该更改配置文件,但我不确定它在哪里或如何编辑它(是的,我知道它将是文本或 xml 文件的某个版本。)如果你有一个例子会愿意张贴我会很感激。我正在使用 robomongo 的 Windows 机器上工作,我使用 ac# 4.0 restful 服务访问数据库

编辑:我还希望能够同时打开两个连接。

4

2 回答 2

5

您只需要确保每个实例都有自己的数据目录、端口和日志文件。

在启动该过程之前,请确保您指定的所有目录都已经存在。例如,如果 Mongod 找不到您在 中指定的文件夹,它将抛出错误并退出--dbpath

如果您使用的是 linux 机器,则可以使用--fork. Windows 使用该start命令执行此操作。假设mongod.exe在您的路径上:

start mongod.exe --logpath C:\logs\log1.log --dbpath C:\data\db1 --port 27017
start mongod.exe --logpath C:\logs\log2.log --dbpath C:\data\db2 --port 27018
start mongod.exe --logpath C:\logs\log3.log --dbpath C:\data\db3 --port 27019

这些命令中的每一个都将生成一个新的命令窗口,该窗口运行mongod具有指定参数的进程。如果您想将 MongoDB 作为 Windows 服务运行,请查看文档

于 2013-10-08T21:28:57.320 回答
0

您甚至不需要更改配置文件(这仅适用于在默认端口上作为服务运行的 mongod。您可以简单地从命令行使用配置参数启动其他 mongod 实例(我不使用 windows,但它应该与linux非常相似)

>  mongod --logpath "log/foo.log" --dbpath data/foo --port 27020 --fork
>  mongod --logpath "log/bar.log" --dbpath data/bar --port 27021 --fork
于 2013-10-08T19:52:23.037 回答