Feature Compatibility Version (FCV)
Описание
Feature Compatibility Version (FCV) — это настройка, определяющая, какие возможности MongoDB разрешено использовать.
Она хранится в системной коллекции admin.system.version и по умолчанию совпадает с версией, на которой база данных была изначально развернута.
FCV позволяет кластеру временно работать в режиме совместимости со старой версией, даже после обновления бинарных файлов MongoDB. Это обеспечивает возможность постепенного обновления экземпляров в репликационном наборе MongoDB без необходимости полного простоя.
Важно: FCV всегда работает только на одну версию вверх — например, версия MongoDB 7.0 может иметь FCV = "6.0" или "7.0", но не "5.0". Это значит, что обновление следует выполнять поэтапно: 6.0 → 7.0, затем при необходимости 7.0 → 8.0 и так далее.
Для установок с одним экземпляром базы данных FCV не играет особой роли — обновление таких экземпляров происходит напрямую, без межузловой совместимост и.
Проверка и настройка FCV
Перед началом любых действий, связанных с базой данных MongoDB, необходимо создать резервную копию. Без резервной копии восстановление данных в случае некорректного завершения обработки будет невозможно, и техническая поддержка Пассворка не сможет оказать помощь.
Примеры создания и восстановления резервных копий
Для проверки FCV перед выполнением обновления:
- Подключитесь к кластеру пользователем с правами доступа к базе
admin:
- shell
mongosh "mongodb://your_admin_user:your_password@node1:27017,node2:27017,node3:27017/?replicaSet=your_replicaset_name"
- Получите текущее значение FCV:
- shell
db.adminCommand({ getParameter: 1, featureCompatibilityVersion: 1 })
- Eсли значение меньше текущей версии MongoDB, обновите его до используемой версии:
- shell
db.adminCommand({ setFeatureCompatibilityVersion: "7.0" })