Обслуживание базы данных на PostgreSQL

27.05.20

База данных - Администрирование СУБД

Предысторией создания данного продукта был перевод одного из своих клиентов на PostgreSQL. Серверная платформа не позволяла установить там pgAdmin. А скриптами и планировщиками пользоваться неудобно. Поэтому пришла идея реализовать обслуживание баз данных PostgreSQL средствами 1С.

Скачать исходный код

Наименование Файл Версия Размер
Обслуживание БД PostgreSQL:
.dt 188,99Kb
27
.dt 1.0 188,99Kb 27 Скачать

Решение выполнено в виде отдельной конфигурации. При желании можно внедрить ее в другую конфигурацию, т.к. все объединено в пределах одной подсистемы.

Смысл разработки заключается в следующем.

Создается новая база на сервере. В нее загружается прилагаемая выгрузка и в итоге получается база, способная обслуживать базы данных, имеющиеся в PostgreSQL.

Доступны 4 операции: сохранение (backup), сжатие (vacuum), реиндексация (reindex) и восстановление (restore).

Они могут выполняться как вручную из интерфейса, так и регламентными заданиями.

Для каждой операции и каждой базы создается отдельное регламентное задание.

Т.е., например, настраиваем сохранение какой-то базы регламентным заданием с заданным расписанием и это задание будет автоматом копировать базу в указанное место без участия администратора.

Копии создаются в сжатом режиме, имена файлов копий содержат дату и время создания для сохранения истории. Старые копии могут автоматически удаляться.

Создавалось все в авральном режиме, поэтому сразу могу выделить несколько недостатков:

1. Кургузая справка, но администраторы, думаю, разберутся.

2. Нет лога.

3. Нет контроля завершения выполнения операции, т.е. ручной пуск или регламентное задание только запускают выполнение на сервере PostgreSQL и не знают, когда оно закончится. Этот контроль лежит на администраторе.

Буду рад услышать пожелания и сообщения о багах.

Доработки планируются при достаточной востребованности.

Разработка и отладка велась на платформе 1С 8.3.13.1644, под Windows 10 и Windows Server 2008 R2.

обслуживание backup postgre резервное копирование

См. также

Установка и примеры использования 1С:Исполнитель на РедОС

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Краткое описание шагов по установке, настройке и применению инструмента 1С:Исполнитель на операционной системе РедОС, а также по борьбе с некоторыми возникающими ошибками.

06.05.2024    319    artemusII    0    

1

Нестандартное решение пересчета итогов

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Статья для тех, кто столкнулся с необходимостью пересчета итогов для "больших таблиц" и нет возможности поставить на паузу ИБ для проведения работ.

25.04.2024    1432    virustam    28    

7

Идентификация пользователя не выполнена

Администрирование СУБД Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бесплатно (free)

Иногда в конфигурации 1С:Бухгалтерский учет v3.0 возникает ситуация, когда программа всем пользователям выдает предупреждение, что авторизация не выполнена и работа программы будет завершена. Данная инструкция позволяет решить возникшую проблему.

24.04.2024    500    Yan_Malyakov    0    

2

Устранение ошибки выполнения скрипта "Создать сервис RAGENT" в ЦКК

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В статье показано, как устранить ошибку выполнения скрипта "Создать сервис RAGENT" в системах 1С:Центр контроля качества или в 1С:Центр автоматизации. Будет полезна администраторам ЦКК и ЦА, которые только начали знакомство с этими системами.

18.04.2024    385    artemusII    0    

7

Долгая реструктуризация, замеры времени и очистка Ветис. Розница 2.3

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

При подготовке к обновлению возникли проблемы на стадии тестирования и исправления базы данных, также при создании файлов РИБ для магазинов.

16.04.2024    414    xKaskadx    4    

1

Установка и получение лицензии на базовую конфигурацию 1С на Mac OS

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Установить купленную базовую конфигурацию 1С и получить лицензию на MAC OS не так просто, как кажется на первый взгляд и как хотелось бы. Официально в системных требованиях на базовую конфигурации 1С пишет всякие виндовсы и пару-тройку линуксов. МакОс там нет. В статье расскажу, как все-таки поставить на Мак базовую конфигурацию 1С.

11.04.2024    436    pahmutov    0    

3

Установка тонкого клиента 1С на Rasbian (Raspberry Pi 5)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

После приобретения Raspberry Pi 5 решил проверить, есть ли возможность использования устройства для организации тонкого клиента. В результате столкнулся с особенностью установки 1С: Предприятие 8.3.23 на Raspbian, решением которой я хочу поделиться с сообществом.

07.04.2024    825    Bessome    4    

5

Порционный шринк базы

Администрирование СУБД Бесплатно (free)

Скрипт позволяет высвобождать место в операционную систему, занятое файлом базы MS SQL в итерациях с заданным количеством мегабайт

28.03.2024    1399    Garilia    3    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Бэнни 205 02.06.20 09:13 Сейчас в теме
Бекап делаете с помощью pg_dump?
2. andrewbc 331 02.06.20 12:38 Сейчас в теме
3. Бэнни 205 02.06.20 17:23 Сейчас в теме
(2) для создания корректного бекапа, через вашу конфигурацию, получается, нужна остановка сервера 1С?
4. tolik_unix 02.06.20 17:34 Сейчас в теме
(3) Через pg_dump останавливать сервер 1С не нужно!! Но после восстановления базы из дампа, нужно сделать vacuum full (только на восстановленной базе), т.к.в дампе не хранятся индексы.
7. D_astana 110 03.06.20 07:00 Сейчас в теме
(4) Ну и признак анализа тоже добавить надо, ибо если автоанализ настроен неправильно, база без актуальной статистики будет после восстановления.

А вообще для кого это? Для бухгалтеров? Установить pg_probackup для ванильной версии делов на 15 мин. Зато получаем возможность восстановления вплоть посекундно, архивирование wal, автоочистку старых копий, авточистку архивных wal, проверку роботоспособности сделанной копии и все бесплатно.

Скрипт вакуума и реиндексации по 1 строчке.
8. Бэнни 205 03.06.20 22:49 Сейчас в теме
(4)
А что станет с открытыми транзакциями в момент pg_dump? Информации о них не станет, и можем получить замечательные ошибки после развертывания, разве нет?
9. ansh15 04.06.20 09:44 Сейчас в теме
(8) В документации пишут, что
Дампы, создаваемые pg_dump, являются внутренне согласованными, то есть, дамп представляет собой снимок базы данных на момент начала запуска pg_dump

Наверное, позаботились о том, чтобы незавершенные транзакции не попадали в этот снимок базы..
5. andrewbc 331 02.06.20 18:33 Сейчас в теме
(3) Сервер 1С останавливать не нужно, даже не нужно срубать сеансы и соединения
(4) Спасибо за информацию, потестирую. Но я делал просто restore - и база нормально работала.
6. tolik_unix 02.06.20 21:18 Сейчас в теме
(5) База работает, но при значимых нагрузках чувствуются тормоза. При этом, если дамп распаковать в предыдущую тестовую базу, то база вообще может не открываться пока не будет выполнен vacuum full.

Ещё одна особенность - pg_dump не гарантирует, что база будет восстановлена из дампа. Поэтому правильно по окончанию создания дампа запустить восстановление из дампа - если восстановится, то дамп можно считать успешным.

vacuum - это не сжатие. Да, vacuum может приводить к уменьшению размера базы, но это совершенно иная операция.
10. nastasya17 07.04.22 11:31 Сейчас в теме
Добрый день. Данное расширение работает на Linux?
11. alfanika 478 20.04.22 10:01 Сейчас в теме
Очень актуально такое же решение под Linux.
Оставьте свое сообщение