@@ -58,7 +58,7 @@ foreach ($db_host in $db_hosts) {
5858}
5959```
6060
61- ** Шаг 2. Выполнить на каждом сервере СУБД Linux (Bash)**
61+ ** Шаг 2. Выполнить на каждом сервере СУБД Linux (Bash) - создаём файлы **
6262``` bash
6363sudo -i
6464
@@ -79,7 +79,7 @@ chown postgres:postgres .pgpass {pg_backup,{archive,restore}_command}.sh pg_back
7979
8080# проверяем работоспособность (отладка), выводим сообщения на экран
8181sudo -i -u postgres -- ./pg_backup.sh ExecCondition # будем ли создавать или проверять резервную копию с текущего сервера СУБД (см. код возврата)?
82- sudo -i -u postgres -- ./pg_backup.sh # создаст резервную копию текущего сервера СУБД
82+ sudo -i -u postgres -- ./pg_backup.sh create # создаст резервную копию текущего сервера СУБД
8383sudo -i -u postgres -- ./pg_backup.sh validate # проверит корректность и восстанавливаемость резервной копии СУБД
8484sudo -i -u postgres -- ./pg_backup.sh restore SOURCE_BACKUP_FILE_OR_DIR TARGET_PG_DATA_DIR # восстановит резервную копию СУБД
8585
@@ -89,24 +89,37 @@ sudo -i -u postgres -- ./pg_backup.sh restore SOURCE_BACKUP_FILE_OR_DIR TARGET_P
8989(cp --update --backup $HOME_DIR /pg_install/pg_backup_validate.timer /etc/systemd/system || nano -c /etc/systemd/system/pg_backup_validate.timer) && \
9090(cp --update --backup $HOME_DIR /pg_install/pg_backup_validate.service /etc/systemd/system || nano -c /etc/systemd/system/pg_backup_validate.service) && \
9191systemctl daemon-reload # активируем
92-
92+ ```
93+
94+ ** Шаг 3. Выполнить на каждом сервере СУБД Linux (Bash) - запускаем pg_backup**
95+ ``` bash
9396# добавляем в автозагрузку
9497systemctl enable pg_backup.timer && \
95- systemctl enable pg_backup.service && \
96- systemctl enable pg_backup_validate.timer && \
97- systemctl enable pg_backup_validate.service
98+ systemctl enable pg_backup.service
9899
99- # запускаем; сделает резервную копию СУБД, если условие ExecCondition выполнится (НЕ выведет сообщения на экран)
100+ # запускаем; сделает резервную копию СУБД, если условие ExecCondition выполнится
100101systemctl start pg_backup.timer && \
101- systemctl start pg_backup.service && \
102- systemctl start pg_backup_validate.timer && \
103- systemctl start pg_backup_validate.service
102+ systemctl start pg_backup.service
104103
105- # проверяем статус (1)
104+ # проверяем статус
106105systemctl status pg_backup.timer && \
107106systemctl status pg_backup.service
108107
109- # проверяем статус (2)
108+ # получаем список активных таймеров, д.б. указана дата-время следующего запуска!
109+ systemctl list-timers | grep -P ' NEXT|pg_backup'
110+ ```
111+
112+ ** Шаг 4. Выполнить на каждом сервере СУБД Linux (Bash) - запускаем pg_backup_validate**
113+ ``` bash
114+ # добавляем в автозагрузку
115+ systemctl enable pg_backup_validate.timer && \
116+ systemctl enable pg_backup_validate.service
117+
118+ # запускаем; проверит корректность и восстанавливаемость резервной копии СУБД, если условие ExecCondition выполнится
119+ systemctl start pg_backup_validate.timer && \
120+ systemctl start pg_backup_validate.service
121+
122+ # проверяем статус
110123systemctl status pg_backup_validate.timer && \
111124systemctl status pg_backup_validate.service
112125
@@ -115,14 +128,15 @@ systemctl list-timers | grep -P 'NEXT|pg_backup'
115128```
116129
117130Файлы
118- * [ ` /etc/systemd/system/pg_backup.timer ` ] ( pg_backup.timer )
119- * [ ` /etc/systemd/system/pg_backup.service ` ] ( pg_backup.service )
120- * [ ` /etc/systemd/system/pg_backup_validate.timer ` ] ( pg_backup_validate.timer )
121- * [ ` /etc/systemd/system/pg_backup_validate.service ` ] ( pg_backup_validate.service )
122- * [ ` /var/lib/pgsql/pg_backup.sh ` ] ( pg_backup.sh )
123- * [ ` /var/lib/pgsql/pg_backup.conf ` ] ( pg_backup.conf )
124- * [ ` /var/lib/pgsql/archive_command.sh ` ] ( archive_command.sh )
125- * [ ` /var/lib/pgsql/restore_command.sh ` ] ( restore_command.sh )
131+ 1 . [ ` /etc/systemd/system/pg_backup.timer ` ] ( pg_backup.timer )
132+ 1 . [ ` /etc/systemd/system/pg_backup.service ` ] ( pg_backup.service )
133+ 1 . [ ` /etc/systemd/system/pg_backup_validate.timer ` ] ( pg_backup_validate.timer )
134+ 1 . [ ` /etc/systemd/system/pg_backup_validate.service ` ] ( pg_backup_validate.service )
135+ 1 . [ ` /var/lib/pgsql/pg_backup.sh ` ] ( pg_backup.sh )
136+ 1 . [ ` /var/lib/pgsql/pg_backup_test.sh ` ] ( pg_backup_test.sh )
137+ 1 . [ ` /var/lib/pgsql/pg_backup.conf ` ] ( pg_backup.conf )
138+ 1 . [ ` /var/lib/pgsql/archive_command.sh ` ] ( archive_command.sh )
139+ 1 . [ ` /var/lib/pgsql/restore_command.sh ` ] ( restore_command.sh )
126140
127141## Ссылки по теме
128142* [ PostgreSQL: копирование WAL файлов в архив (archive_command)] ( archive_command.md )
0 commit comments