1
Что такое Databasus и как он делает бекапы MongoDB?
Databasus — это self-hosted инструмент резервного копирования с лицензией Apache 2.0, который использует mongodump для создания консистентных бекапов MongoDB. Он дополняет mongodump современным веб-интерфейсом, расписаниями, интеграцией с облачными хранилищами (S3, Google Drive, Dropbox), мгновенными уведомлениями (Slack, Discord, Telegram) и шифрованием AES-256-GCM — самописные shell-скрипты и cron-задачи больше не нужны.
2
Поддерживает ли Databasus реплика-сеты MongoDB?
Да, Databasus полностью поддерживает реплика-сеты MongoDB. Вы можете подключиться к любому члену реплика-сета через стандартную строку подключения MongoDB с опциями replica set. Databasus будет читать с указанного узла, поэтому бекапы можно снимать с secondary-узлов и разгружать primary. Это особенно полезно в продакшене, где важно не влиять на производительность основного узла.
3
Можно ли делать бекапы баз MongoDB Atlas через Databasus?
Да, Databasus работает с MongoDB Atlas. Поскольку Databasus делает логические бекапы через mongodump, ему достаточно стандартных реквизитов подключения к MongoDB — специальные права Atlas и административные роли не нужны, а в список разрешенных IP достаточно добавить только сервер Databasus. Просто укажите строку подключения Atlas (она есть в панели Atlas), остальное Databasus сделает сам.
4
Какие версии MongoDB поддерживает Databasus?
Databasus поддерживает MongoDB версий 4, 5, 6, 7 и 8. Все бекапы делаются родным инструментом mongodump с флагами --archive и --gzip: получаются компактные сжатые BSON-архивы. Их можно восстановить через mongorestore на любую совместимую версию MongoDB, что упрощает миграции между версиями.
5
Как Databasus работает с большими коллекциями MongoDB?
Databasus передает вывод mongodump напрямую в хранилище, при необходимости шифруя поток на лету. Такой подход обходится без временных файлов на диске, поэтому хорошо работает с базами, где есть большие коллекции. Флаг --archive создает один сжатый файл вместо структуры каталогов, что снижает нагрузку на ввод-вывод и упрощает хранение.
6
Можно ли делать бекапы шардированных кластеров MongoDB через Databasus?
Сейчас Databasus ориентирован на бекапы отдельных баз MongoDB, а не на координированные бекапы шардированных кластеров.
Для шардированных кластеров можно:
• копировать каждый шард отдельно, подключаясь к его реплика-сету
• делать бекап через роутер mongos (это может сказаться на производительности)
Для продакшен-кластеров с шардированием рассмотрите встроенные бекапы MongoDB Atlas или mongodump с --oplog, чтобы получить консистентный снимок всех шардов на один момент времени.
7
Как Databasus защищает учетные данные MongoDB и бекапы?
Databasus использует многоуровневую защиту:
1. Шифрование реквизитов: все строки подключения, пароли и данные аутентификации MongoDB шифруются AES-256-GCM перед сохранением.
2. Шифрование бекапов: каждый BSON-архив шифруется уникальным ключом, выведенным из мастер-ключа, ID бекапа и случайной соли.
3. Безопасная передача реквизитов: строки подключения передаются mongodump напрямую через безопасные параметры и никогда не попадают в логи или список процессов.
8
Поддерживает ли Databasus инкрементальные бекапы MongoDB или чтение oplog?
Databasus делает полные логические бекапы через mongodump, без инкрементальных бекапов и восстановления на момент времени по oplog. В большинстве сценариев полных бекапов по расписанию — каждый час, день или неделю — хватает как точек восстановления, и возиться с oplog не приходится. В MongoDB Atlas уже есть встроенные непрерывные бекапы с восстановлением на момент времени, а внешние инкрементальные бекапы в кластеры Atlas просто так не восстановить.
9
Можно ли восстановить бекап MongoDB на другую версию или в другой кластер?
Да. Databasus создает стандартные архивы mongodump в формате BSON, поэтому их можно восстановить на любой совместимый сервер MongoDB: другой версии, у другого облачного провайдера или на локальной машине разработчика. Скачайте бекап из Databasus (он расшифровывается автоматически), затем запустите mongorestore с флагами --archive и --gzip. Databasus показывает точную команду восстановления для каждого бекапа.
10
Как в Databasus работает сжатие mongodump?
Databasus использует встроенный флаг --gzip у mongodump, который сжимает BSON-данные прямо во время дампа. Обычно это уменьшает размер архива на 60-80% по сравнению с несжатым BSON. Сжатие происходит в потоке mongodump до опционального шифрования, поэтому и сжатые, и зашифрованные архивы остаются компактными. При восстановлении через mongorestore с флагом --gzip распаковка выполняется автоматически.
11
Можно ли копировать отдельные коллекции MongoDB вместо целых баз?
Сейчас Databasus копирует базы MongoDB целиком, а не отдельные коллекции. Так вы получаете полные консистентные бекапы со всеми коллекциями, индексами и метаданными. Если нужны бекапы на уровне коллекций, разнесите данные по отдельным базам для разных доменов — у каждой будет свое расписание бекапов в Databasus.
12
Работает ли Databasus с MongoDB в Docker или Kubernetes?
Да, Databasus подключается к MongoDB по сети через стандартные строки подключения, поэтому работает с MongoDB где угодно: в контейнерах Docker, подах Kubernetes, на виртуальных машинах или голом железе. Достаточно сетевой связности между Databasus и вашим экземпляром MongoDB. В Kubernetes можно использовать внутренние DNS-имена сервисов или внешние адреса балансировщика.