MongoDB Master和Slave同时

时间:2012-02-27 13:15:07

标签: mongodb

我有一台服务器,我想用它来测试新的应用程序版本(比如登台服务器),但同时我想将它用作MongoDB的复制从属服务器。所以,有两个角色:

  • 始终将数据库复制到此服务器(只有一个数据库,原始,包含真实数据)
  • 部署后,将原始数据库的副本复制到新数据库(*-staging db),并针对此数据库测试我的部署

我从docs看到如何只将指定的数据库从一台服务器复制到另一台服务器,看起来它运行正常。但是,当我试图在从属服务器上复制现有数据库时,它失败并出现错误not master。我不想在主服务器上创建此数据库副本,因为这意味着将对主服务器执行所有暂存测试,这对我不起作用。

这是否意味着我不能将MongoDB master用于一个数据库,而奴隶用于另一个数据库?

1 个答案:

答案 0 :(得分:2)

默认情况下,Slaves是只读的,但是你可以通过在启动服务器时同时传递--master和--slave来同时使它成为master和slave来实现你想要做的事情:

mongod --slave --source master:1234 --master