我有一个副本集,一个主,一个二级和一个仲裁者。关闭辅助成员时,无法删除数据库。它在等待什么。但是,如果我打开辅助成员,dropDatabase就可以了。原因是什么?我们不能在没有辅助成员的情况下删除数据库吗?
发布于 2019-03-13 08:47:45
从MongoDB 3.6开始,dropDatabase现在带了一个writeConcern。默认情况下,这将设置为majority。这意味着,在3的复制集集群中,至少有2个包含数据的节点(而不是仲裁者)需要应用相同的更改。
如果您真的需要,可以强制dropDatabase只使用一个包含数据的节点,使用writeConcern of 1。但是,这可能导致回滚。
有关writeConcern和如何设置它的更多信息,请参阅docs:https://docs.mongodb.com/manual/reference/write-concern/
https://stackoverflow.com/questions/55136731
复制相似问题