Как найти имя набора реплик? - PullRequest
0 голосов
/ 28 июня 2018

У меня есть экземпляр M0, созданный на mongodb.com с использованием всех значений по умолчанию. Я скопировал строку подключения URI из диалога подключения Atlas. Он был распознан в mongoDB Compass, и форма сведений о соединении была автоматически заполнена.

Несколько недель он работал нормально, и я мог просматривать свои документы. Тогда вдруг я получаю:

Произошла ошибка при загрузке навигации: «не master, а slaveOk = false»: рекомендуется изменить предпочтение чтения в диалоговом окне подключения на «Первичное предпочтение» или «Вторичное предпочтение» или указать имя набора реплик для подключения с полной топологией.

Я искал и большинство предлагает явно указать Replica Set Name. Для автоматических настроек Read Preference установлено на Основной, а Replica Set Name пусто.

Почему эта ошибка возникает внезапно и как узнать имя набора реплик для использования?

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Чтобы найти имя набора реплик:

Откройте оболочку Монго и введите команду:

rs.status()

это даст вам документ с именем набора реплик (под ключом set):

{
    "set" : "Name of your replica set",
    ...
}
0 голосов
/ 04 июля 2018

Почему эта ошибка возникает внезапно

Сообщение об ошибке вызвано тем, что Выбор набора реплик изменил состояние экземпляра, к которому вы подключаетесь, с Первичный на Вторичный .

При подключении с использованием MongoDB Compass и имя набора реплик не указано. Это будет прямое соединение с экземпляром, а не соединение с набором реплик (автоматическое обнаружение топологии).

как узнать имя набора реплик для использования?

На странице проекта MongoDB Atlas выберите ссылку Deployment в меню слева. На вкладке Processes в представлении Topology вы должны увидеть имя набора реплик (это должно быть представление по умолчанию, отображаемое при нажатии на Deployment).

Обычно , имя набора реплик - это имя кластера плюс -shard-0. то есть имя кластера test, имя набора реплик test-shard-0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...