tools.win_pg_dump_controller

Yohn Y. 2022-05-05 Parent:7c93b0305522

3:34db5b44491d Go to Latest

tools.win_pg_dump_controller/README.md

* Орфография в `README` . Рефакторинг в полученном модуле

History
1 Мотивация
2 =========
4 Есть прекрасная платформа `windows`. И есть в ней сервисы разные, но нет консоли нормальной. Либо `cmd`,
5 либо `powershell` и крутись как хочешь...
7 Для того чтобы не крутиться хотя бы в вопросах резервных копий `PostgreSQL` создан этот модуль.
9 Почему не другие решения? Поскольку хорошее решение требует нормальной инфраструктуры, а не `PostgreSQL` на `Windows`.
10 В нормальной инфраструктуре это всё делается проще и скрипты уже есть. Но здесь `windows`
12 Кроме того, имея эту основу можно попытаться сделать нечто более сложное.
15 Как пользоваться?
16 =================
18 Запуск модуля через `c:\python38\python.exe -m win_pg_dump_controller c:\etc\pg_backup.config`.
19 `c:\etc\pg_backup.config` файл в формате `INI`. Пример файла в `examples`
22 Описание Конфигурационного файла
23 --------------------------------
25 ### Секции
27 * `main` - основная конфигурация скрипта
28 * `common` - общие параметры заданий
29 * `smtp` - настройка оповещения через почту
30 * `${Имя задания}` - параметры задания. `${Имя задания}` задаётся пользователем, чтобы ему было понятно.
31 Оно фигурирует в журналах, используется в файлах резерных копий. Поэтому есть смысл избегать в нём русских букв
32 и специальных символов
35 ### Параметры в `main`
37 * `pg_bin_path` - расположение директории `bin` нужной инстраляции `PostgreSQL`.
38 Можно поискать файл `pg_dump.exe` и внести сюда ту директорию, в которой он лежит
39 * `pg_dump_flags` - если не хватает флагов `pg_dump`, недостающие можно перечислить здесь.
40 * `log_dir` - каталог, куда будут писаться логи всего что происходит. Если не задан, логи писаться не будут.
41 * `teir1_days` - период самых последних резервных копий. Количество дней, за которые они вообще чиститься не будут.
42 По умолчанию 7 дней.
43 * `teir2_copies_interval` - архивный период резервных копий, количество дней между сохранёнными копиями. То есть
44 за этот период будет храниться только одна, самая старая копия. По умолчанию 7 дней
45 * `tier2_store_days` - за этим количеством дней копии чистятся. По умолчанию 30 дней
46 * `keep_logs_days` - количество дней за который хранить журналы.
49 ### Параметры в `smtp`
51 * `smtp server` - IP или имя узла SMTP сервера
52 * `smtp port` - Порт SMTP сервера
53 * `mail from` - E-Mail источника почты
54 * `mail to` - Имя ПЯ куда отправлять письма
57 ### Параметры `common` и раздела задач
59 * `host_name` - имя или IP узла баз данных. По умолчанию `127.0.0.1`
60 * `db_name` - имя базы данных
61 * `user_name` - имя пользователя для подключения к серверу
62 * `passwd` - пароль пользователя
63 * `port` - порт сервера баз данных
64 * `dst_dir` - каталог, к котором будут хранится резервные копии задания.