Почему не стартует full Pg_probackup?

День добрый, имееv Debian 11 + postgrespro-1c-16
Необходимо настроить бэкапы используя pg_backupro.

Хранилище и инстансе добавил, пытаюсь запустить full бэкап получаю ошибку

postgres@PGAUTO:~$ pg_probackup-16 backup --threads=3 -B /backup_pg --instance backup -b FULL --stream --compress
WARNING: Control file "/backup_pg/backups/backup/S93KQV/backup.control" doesn't exist
WARNING: Control file "/backup_pg/backups/backup/S93JUP/backup.control" doesn't exist
INFO: Backup start, pg_probackup version: 2.5.13, instance: backup, backup ID: S93LBZ, backup mode: FULL, wal mode: STREAM, remote: false, compress-algorithm: zlib, compress-level: 1
ERROR: could not connect to database postgres: не удалось подключиться к серверу: Нет такого файла или каталога
        Он действительно работает локально и принимает
        соединения через Unix-сокет "/var/run/postgresql/.s.PGSQL.5432"?

Postgres pro работает
root@PGAUTO:~# systemctl status postgrespro-1c-16.service
● postgrespro-1c-16.service - Postgres Pro 1c 16 database server
     Loaded: loaded (/lib/systemd/system/postgrespro-1c-16.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2024-02-19 11:12:21 MSK; 2h 5min ago
    Process: 372 ExecStartPre=/opt/pgpro/1c-16/bin/check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
   Main PID: 384 (postgres)
      Tasks: 10 (limit: 23394)
     Memory: 2.3G
        CPU: 11min 6.465s
     CGroup: /system.slice/postgrespro-1c-16.service
             ├─ 384 /opt/pgpro/1c-16/bin/postgres -D /var/lib/pgpro/1c-16/data
             ├─ 451 postgres: logger
             ├─ 452 postgres: checkpointer
             ├─ 453 postgres: background writer
             ├─ 455 postgres: walwriter
             ├─ 456 postgres: autovacuum launcher
             ├─ 457 postgres: logical replication launcher
             ├─2137 postgres: postgres auto 192.168.250.110(56752) idle
             ├─2868 postgres: postgres auto 192.168.250.110(60419) idle
             └─2869 postgres: postgres auto 192.168.250.110(60420) idle

фев 19 11:12:20 PGAUTO systemd[1]: Starting Postgres Pro 1c 16 database server...
фев 19 11:12:21 PGAUTO postgres[384]: 2024-02-19 11:12:21.307 MSK [384] СООБЩЕНИЕ:  передача вывода в протокол процессу сбора протоколов
фев 19 11:12:21 PGAUTO postgres[384]: 2024-02-19 11:12:21.307 MSK [384] ПОДСКАЗКА:  В дальнейшем протоколы будут выводиться в каталог "log".
фев 19 11:12:21 PGAUTO systemd[1]: Started Postgres Pro 1c 16 database server.
root@PGAUTO:~#


pg_hba.conf
# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     peer
host    replication     all             127.0.0.1/32            md5
host    replication     all             ::1/128                 md5
host            all             all             192.168.250.176/32      trust
host            all             all             0.0.0.0/0       md5


Подскажите в чем загвоздка ?
  • Вопрос задан
  • 378 просмотров
Решения вопроса 1
@dr753 Автор вопроса
Одним словом

В системе установлен системный пакет libpq. Системный libpq пытается установить соединение с сервером через /var/run, в то время как не-дебиановские постгресы ожидают соединения в /tmp.

Проблему решаем так
В postgresql.conf
Задаем м значение
unix_socket_directories = '/var/run/postgresql/' # comma-separated list of directories

И вуаля

root@bakupTest:/var/lib/pgpro/1c-16/data# sudo -u postgres pg_probackup-16 backup --threads= 3 -B /bg_bakup --instance backup -b FULL --stream --compress

ИНФОРМАЦИЯ: Начало резервного копирования, версия pg_probackup: 2.5.13, экземпляр: backup, идентификатор резервной копии: S95GOE, режим резервного копирования: ПОЛНЫЙ, режим wal: ПОТОКОВЫЙ, удаленный: false, алгоритм сжатия: zlib, уровень сжатия: 1
ПРЕДУПРЕЖДЕНИЕ: Этот экземпляр PostgreSQL был инициализирован без контрольных сумм блоков данных. у pg_probackup нет способа обнаружить повреждение блока данных без них. Повторно инициализируйте PGDATA с опцией '--data-контрольные суммы'.
ПРЕДУПРЕЖДЕНИЕ: Текущая роль PostgreSQL - суперпользователь. Не рекомендуется запускать pg_probackup от имени суперпользователя.
ИНФОРМАЦИЯ: Начало резервного копирования базы данных
ИНФОРМАЦИЯ: подождите, пока pg_backup_start()
ИНФОРМАЦИЯ: Дождитесь потоковой передачи сегмента WAL / bg_bakup / резервных копий / backup / S95GOE / базы данных / pg_wal / 000000010000000000000002
ИНФОРМАЦИЯ: Размер PGDATA: 22 МБ
ИНФОРМАЦИЯ: Текущий начальный LSN: 0/2000028, TLI: 1
ИНФОРМАЦИЯ: Начать передачу файлов данных
ИНФОРМАЦИЯ: Файлы данных загружены передано, истекло время: 0
ИНФОРМАЦИЯ: дождитесь pg_stop_backup()
ИНФОРМАЦИЯ: pg_stop backup() успешно выполнена
ИНФОРМАЦИЯ: stop_lsn: 0 / 20001A0
ИНФОРМАЦИЯ: Получение времени восстановления из WAL
ИНФОРМАЦИЯ: Синхронизация файлов резервных копий на диск
ИНФОРМАЦИЯ: Файлы резервных копий синхронизированы, истекло время: 0
ИНФОРМАЦИЯ: Проверка резервной копии S95GOE
ИНФОРМАЦИЯ: Файлы данных резервной копии S95GOE действительны
ИНФОРМАЦИЯ: Размер резидентной копии S95GOE: 24 МБ
ИНФОРМАЦИЯ: Резервное копирование S95GOE завершено
root@bakupTest:/var/библиотека/pgpro/1c-16/данные#
P/S
Незабываем создать каталог и сменить владельца на postgres:postgres

создаем
mkdir /var/run/postgresql/
меняем владельца
chown postgres:postgres /var/run/postgresql/
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы