mongodb не может удалить базу данных, когда вторичный не работает - PullRequest
2 голосов
/ 13 марта 2019

У меня есть набор реплик с 1 первичным, 1 вторичным и 1 арбитром. Когда я закрываю дополнительный член, я не могу удалить базу данных. Это чего-то ждет. Однако, если я открою дополнительный член, dropDatabase в порядке. В чем причина этого? Разве мы не можем удалить базу данных без какого-либо дополнительного члена?

1 Ответ

3 голосов
/ 13 марта 2019

Так как MongoDB 3.6, dropDatabase теперь несет writeConcern.Это установлено на majority по умолчанию.Это означает, что в кластере репликаций из 3 по крайней мере 2 несущих данные узла (не арбитры) должны применить одно и то же изменение.

Если вы действительно хотите, вы можете заставить dropDatabase завершить работу, используя только одинпереносящий данные узел с использованием writeConcern из 1.Однако это может вызвать откат .

Для получения дополнительной информации о writeConcern и о том, как его установить, обратитесь к документации: https://docs.mongodb.com/manual/reference/write-concern/

...