Как восстановить поврежденный кластер MongoDB?
У меня были проблемы с набором реплик MongoDB моего сегментированного кластера. Текущее состояние узлов:
- узел1: основной (но, по-видимому, на него наложено вето узел3, который должен синхронизироваться)
- узел2: откат (раньше это был основной)
- узел 3: не может синхронизироваться
- узел4: задержанное ведомое в настоящее время восстанавливается
- узел5: арбитр
Кажется, в документации сказано, что мне нужно дождаться завершения отката и восстановить или нет дамп на новом первичном сервере. Но node2 уже выполняет откат в течение получаса, и мне интересно, он застрял?
Какие шаги я должен следовать? Можете ли вы дать мне некоторое представление о способе восстановления отката-дампа на новом первичном сервере?
Большое спасибо,
Грег.
1 ответ
Я позволил node2 выполнить откат в течение 2 часов, а затем остановил его. Я не смог найти каталог отката в dbpath...
Поскольку процессы, питающие БД, имеют внутренний буферный механизм, они могут повторно передавать последние данные. Таким образом, в случае потери данных, я могу восстановить их снова.
Поэтому я решил остановить все узлы набора реплик. Затем я запустил старый основной сервер как отдельный сервер, удалил локальную базу данных и развернул оттуда новый набор реплик.
Грег.