我为mongodb创建了3个AWS实例。一个用于主要,一个用于次要和一个仲裁。我的应用程序指向主节点。因此,当主服务器关闭并成为辅助服务器时,不会在其上发布任何数据。如何为辅助节点启用写入操作。 Mongodb的写作关注(w:“多数”)对我没有用。 任何人都可以来解决一下吗?
答案 0 :(得分:3)
您无法在辅助节点上书写。
如果你的主要关闭,它将成为一个次要的,它将通过复制机制从新选择的主要接收写入(你的只有一台机器可以是另一个成员是不保存数据的仲裁器)
写关注不是直接写入二级。它是关于有多少副本集成员(主要成员,辅助成员......)必须确认为您的应用程序写入以从驱动程序接收ok。
答案 1 :(得分:0)
如果您不沿主要方向连接,但将副本名称设置为前缀,则似乎可以正常工作。如果主服务器已经重新启动,并且现在是辅助服务器,它将把您重定向到新的主服务器。
如果主数据库为mongo1,并且副本集名为rs,则您不使用
mongo --host mongo1:27017
但是
mongo --host rs/mongo1:27017