172 похожих чатов

Приветствую. В процессе изучения курса DBA3 дошел до репликации, попробовал

настроить. Кластер beta запустить не смог, оставил в таком состоянии сервер работать.
Теперь /var/lib/postgre/archive вырос до 4 ГБ за несколько дней.
Как задумано очищать в таком случае архивированные журналы, если репликация не нужна стала?

19 ответов

81 просмотр

Слот репликации удалите.

Igor-IT Автор вопроса
Andrey Novikov
Слот репликации удалите.

Спасибо. Пока перевожу инструкцию курса DBA3 (https://edu.postgrespro.ru/dba3/dba3_04_replica_physical.html) на 14-ую версию. Если у меня оба кластера main и beta будут работать под пользователем postgres, это нормально добавить postgres в sudoers? Застрял на этом. postgres@xxx:~$ sudo pg_ctlcluster 14 beta start [sudo] пароль для postgres: postgres отсутствует в файле sudoers. Данное действие будет занесено в журнал.

Igor IT
Спасибо. Пока перевожу инструкцию курса DBA3 (http...

просто так или с какой-то целью (с какой)?

Igor IT
Спасибо. Пока перевожу инструкцию курса DBA3 (http...

Какбы не то, чтобы ненормально... Но зачем? posgres -- как раз ограниченный пользователь для работы этих демонов. Чтобы если что -- всё ограничилось всего лишь постгресом. Зачем давать лишний способ из него выбраться?

Igor-IT Автор вопроса
Evgeniy Naumov
просто так или с какой-то целью (с какой)?

Цель - сертификация по PostgreSQL в будущем. Пока ползу по кривой обучения.

Igor-IT Автор вопроса
Ilya Anfimov
Какбы не то, чтобы ненормально... Но зачем? posgre...

Вот и я засомневался. В курсе DBA3 использовали пользователя student, но я всё пока делал под postgres.

Igor IT
Цель - сертификация по PostgreSQL в будущем. Пока ...

в дистрибутивах уже задается отдельный пользователь. в пакетах от разработчиков - тоже. судо ему не надо для штатной работы. для сертификации подозреваю это тоже лишнее. разве что в контексте научиться самостоятельно настраивать запуск бд. вместе с созданием отдельного юзера и т.д.

Igor IT
Спасибо. Пока перевожу инструкцию курса DBA3 (http...

1) Как раз pg_ctlcluster под postgres работает и без sudo. 2) Но команду, которая не работает найти, конечно, можно. И нет, это в корне неправильно. Человек должэн логиниться под собой -- а потом по необходимости что-то имперсонировать из-под этого, административного аккаунта. т.е. sudo service postgresql start 14/main sudo -u postgres psql и т.д.

Igor IT
Спасибо. Пока перевожу инструкцию курса DBA3 (http...

И да, это в общем не postgres а администрирование линуксов.

Igor-IT Автор вопроса
Ilya Anfimov
1) Как раз pg_ctlcluster под postgres работает и б...

Я не волшебник, я только учусь. Настраиваю сервер Ubuntu с нуля, что-то мог не знать. Пока застрял postgres@xxx:~$ sudo pg_ctlcluster 14 beta start [sudo] пароль для postgres: Error: specified cluster '14 beta' does not exist До настройки репликации для sudo у меня был отдельный от root пользователь, под ним хожу в Putty и по RDP. При этом всё в PostgresSQL делаю под postgres. Вот здесь и встал.

Igor IT
Я не волшебник, я только учусь. Настраиваю сервер ...

Тут надо заметить, что в дебианах дейстивтельно хорошэе управление несколькими постгресами -- все эти pg_wrapper, pg_createcluster и прочее. Оно работает, кучи инстансов автоматически устанавливаются и легко апгрейдятся. Но документацыи от них я практически не видел. Несколько разрозненных man-страничек, несравнимо в общем с основной документацыей posgres. Это недостаток, это есть.

Igor-IT Автор вопроса
Ilya Anfimov
И что говорит pg_lsclusters ?

postgres@xxx:~$ pg_lsclusters Ver Cluster Port Status Owner Data directory Log file 14 main 5432 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log 14 standby1 5433 online postgres /var/lib/postgresql/14/standby1 /var/log/postgresql/postgresql-14-standby1.log Для курса DBA3 пробую поднять третий PostgreSQL-кластер beta (как в курсе).

Igor IT
postgres@xxx:~$ pg_lsclusters Ver Cluster Port St...

Несложно заметить, что есть кластеры 14/main и 14/standby1 , а 14/beta нет. Видимо, не создался.

Igor-IT Автор вопроса
Ilya Anfimov
Несложно заметить, что есть кластеры 14/main и 14/...

Да, создал кластер beta. Сейчас пока застрял на этом postgres@xxx:~$ pg_ctlcluster 14 beta start Warning: the cluster will not be running as a systemd service. Consider using systemctl: sudo systemctl start postgresql@14-beta Error: /usr/lib/postgresql/14/bin/pg_ctl /usr/lib/postgresql/14/bin/pg_ctl start -D /var/lib/postgresql/14/beta -l /var/log/postgresql/postgresql-14-beta.log -s -o -c config_file="/etc/postgresql/14/beta/postgresql.conf" exited with status 1: No such file or directory 2022-04-18 08:58:34.034 UTC [41658] LOG: starting PostgreSQL 14.2 (Ubuntu 14.2-1.pgdg20.04+1+b1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, 64-bit 2022-04-18 08:58:34.035 UTC [41658] LOG: listening on IPv4 address "127.0.0.1", port 5433 2022-04-18 08:58:34.036 UTC [41658] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5433" 2022-04-18 08:58:34.039 UTC [41659] LOG: database system was interrupted; last known up at 2022-04-18 06:34:29 UTC 2022-04-18 08:58:34.176 UTC [41659] FATAL: using recovery command file "recovery.conf" is not supported 2022-04-18 08:58:34.178 UTC [41658] LOG: startup process (PID 41659) exited with exit code 1 2022-04-18 08:58:34.178 UTC [41658] LOG: aborting startup due to startup process failure 2022-04-18 08:58:34.180 UTC [41658] LOG: database system is shut down pg_ctl: could not start server Examine the log output. Вот здесь: 2022-04-18 08:58:34.176 UTC [41659] FATAL: using recovery command file "recovery.conf" is not supported /var/lib/postgresql/14/beta/recovery.conf такой: standby_mode = 'on' primary_conninfo = 'user=postgres passfile=''/var/lib/postgresql/.pgpass'' host=''/var/run/postgresql'' port=5432 sslmode=prefer sslcompression=1 krbsrvname=postgres target_session_attrs=any' primary_slot_name = 'replica' postgres@xxx:~$ pg_lsclusters Ver Cluster Port Status Owner Data directory Log file 14 beta 5433 down,recovery postgres /var/lib/postgresql/14/beta /var/log/postgresql/postgresql-14-beta.log 14 main 5432 down postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log 14 standby1 5433 down postgres /var/lib/postgresql/14/standby1 /var/log/postgresql/postgresql-14-standby1.log

Igor IT
Да, создал кластер beta. Сейчас пока застрял на эт...

В 14 нет recovery.conf (его где-то в районе 12 вроде отменили, в документацыи на его параметры написано).

Igor-IT Автор вопроса
Ilya Anfimov
В 14 нет recovery.conf (его где-то в районе 12 вро...

Значит, мне нужен документ для настройки физической репликации двух кластером PostgreSQL 14 :)

Igor-IT Автор вопроса
Ilya Anfimov
https://www.postgresql.org/docs/current/warm-stand...

Всё получилось, дописал статью https://lytkins.ru/blog/58-postgresql.html

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

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта