tools.win_pg_dump_controller
2022-01-30
Child:7c93b0305522
tools.win_pg_dump_controller/README.md
..init
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/README.md Sun Jan 30 22:17:39 2022 +0300 1.3 @@ -0,0 +1,55 @@ 1.4 +Мотивация 1.5 +========= 1.6 + 1.7 +Есть прекрасная платформа `windows`. И есть в ней сервисы разные, но нет консоли нормальной. Либо `cmd`, 1.8 +либо `powershell` и крутись как хочешь? 1.9 + 1.10 +Для того чтобы не крутиться хотя бы в вопросах рещервных копий `PostgreSQL` создан этот модуль. 1.11 + 1.12 +Почему не другие решения? Поскольку хорошее решение требует нормальной инфраструктуры, а не `PostgreSQL` на `Windows`. 1.13 +В нормальной инфраструктуре это всё делается проще и скрипты уже есть. Но здесь `windows` 1.14 + 1.15 +Кроме того, имея эту основу можно попытаться сделать нечто более сложное. 1.16 + 1.17 + 1.18 +Как пользоваться? 1.19 +================= 1.20 + 1.21 +Запуск модуля через `c:\python38\python.exe -m win_pg_dump_controller c:\etc\pg_backup.config`. 1.22 +`c:\etc\pg_backup.config` файл в формате `INI`. Пример файла в `examples` 1.23 + 1.24 + 1.25 +Описание Конфигурационного файла 1.26 +-------------------------------- 1.27 + 1.28 +### Секции 1.29 + 1.30 +* `main` - основная конфигурация скрипта 1.31 +* `common` - общие параметры заданий 1.32 +* `${Имя задания}` - параметры задания. `${Имя задания}` задаётся пользователем, чтобы ему было понятно. 1.33 + Оно фигурирует в журналах, используется в файлах резерных копий. Поэтому есть смысл избегать в нём русских букв 1.34 + и специальных символов 1.35 + 1.36 + 1.37 +### Параметры в `main` 1.38 + 1.39 +* `pg_bin_path` - расположение директории `bin` нужной инстраляции `PostgreSQL`. 1.40 + Можно поискать файл `pg_dump.exe` и внести сюда ту директорию, в которой он лежит 1.41 +* `pg_dump_flags` - если не хватает флагов `pg_dump`, недостающие можно перечислить здесь. 1.42 +* `log_dir` - каталог, куда будут писаться логи всего что происходит. Если не задан, логи писаться не будут. 1.43 +* `teir1_days` - период самых последних резервных копий. Количество дней, за которые они вообще чиститься не будут. 1.44 + По умолчанию 7 дней. 1.45 +* `teir2_copies_interval` - архивный период резервных копий, количество дней между сохранёнными копиями. То есть 1.46 + за этот период будет храниться только одна, самая старая копия. По умолчанию 7 дней 1.47 +* `tier2_store_days` - за этим количеством дней копии чистятся. По умолчанию 30 дней 1.48 +* `keep_logs_days` - количество дней за который хранить журналы. 1.49 + 1.50 + 1.51 +### Параметры `common` и раздела задач 1.52 + 1.53 +* `host_name` - имя или IP узла баз данных. По умолчанию `127.0.0.1` 1.54 +* `db_name` - имя базы данных 1.55 +* `user_name` - имя пользователя для подключения к серверу 1.56 +* `passwd` - пароль пользователя 1.57 +* `port` - порт сервера баз данных 1.58 +* `dst_dir` - каталог, к котором будут хранится резервные копии задания.