pg_probackup не нашёл экземпляр в каталоге копий
«ERROR: Instance '...' does not exist in this backup catalog» и «WARNING: Control file pg_probackup.conf doesn't exist» в pg_probackup: каталог копий не тот, не инициализирован или экземпляр в нём не добавлен. Как проверить путь и имя экземпляра.
Что это значит
pg_probackup хранит копии в каталоге (-B), внутри которого у каждого экземпляра PostgreSQL свой подкаталог и файл настроек pg_probackup.conf. Ошибка значит, что в указанном каталоге нет экземпляра с таким именем (--instance). Предупреждение про отсутствующий pg_probackup.conf говорит о том же с другой стороны: подкаталог экземпляра пуст или его нет.
Типичные причины: скрипт копирования запускается с другим путём -B или другим именем экземпляра, чем при настройке; каталог копий не смонтирован (сетевой диск отвалился, и путь указывает на пустой локальный каталог); каталог инициализирован, но команда add-instance не выполнялась; экземпляр переименовали вместе с сервером.
Как проверить
pg_probackup show -B /backup
ls -la /backup/backups/
findmnt /backup
Первая команда покажет, какие экземпляры есть в каталоге. Последняя проверит, смонтирован ли каталог копий.
Что сделать
- Если каталог не смонтирован, смонтировать его и проверить, что копии на месте.
- Если имя экземпляра другое, исправить его в скрипте копирования.
- Если экземпляр не добавлялся, выполнить
pg_probackup add-instance -B /backup -D <каталог данных> --instance <имя>и сделать полную копию. - Поставить проверку результата копирования в мониторинг: ошибка в скрипте копирования без тревоги означает, что копий нет уже давно.
Ошибка повторяется?
Запустите Диагностика: за полминуты он покажет состояние базы, брокера, поиска и сервера. С отчётом разберём причину за 30 минут бесплатного созвона.
Написать