Создание второго кластера Postgresql, включение непрерывного архивирования и подключение 1С

08.09.21

База данных - Архивирование (backup)

В этой статье я вам расскажу, как правильно создать и запустить второй кластер postgres`a, а также мы создадим на нем базу с помощью 1С.

Предисловие.

Получил задание на работе: установить линукс, 1с, postgres и подрубить непрерывное архивирование. Дело легкое, но при сдаче мне сказали, что на сервере будет 2 базы. И это была проблема, т.к восстанавливать определенную базу на определенный момент нельзя - весь кластер будет откатываться до необходимой отметки и затрагивать вторую рабочую базу. Сразу в голову приходит мысль о втором кластере, но доходчивой инфы в интернете мало поэтому на освоение этой темы мне понадобилось 3 дня и 3 ночи.

Даю вам все готовое.

Создаем каталоги и выдаем права

mkdir -p /usr/local/pgsql/data2/
chown postgres:postgres /usr/local/pgsql/data2/
chmod 750 /usr/local/pgsql/data2/

Создаем второй кластер 

#Создаение и запуск будут происходить о имени постгреса 

su - postgres

/usr/lib/postgresql/12/bin/pg_ctl initdb -D /usr/local/pgsql/data2/

 



Перед запуском необходимо поменять порт 

#Важно! Конфиг второго кластера лежит в самом кластере, помните этого когда будете делать восстановление

nano /usr/local/pgsql/data2/postgresql.conf
#Убираем со строчки комментарий
port = 5433 
#При желании можно привязать второй кластер к статичному айпи, который вы сделали заранее
listen_addresses = '10.115.1.145'
#Запускаем второй кластер 
/usr/lib/postgresql/12/bin/pg_ctl -w -D /usr/local/pgsql/data2/ start

#Подключение ко втормоу кластеру через psql
postgres@ubuntu:~$ psql -p 5433 

Скрипт для запуска второго кластера при запуске машины. Задержка на запуск скрипта обязательна, можете указать минуту.

mkdir -p /scripts/
nano /scripts/startup_cluster.sh

#!/bin/sh

sleep 200

sudo -i -u postgres /usr/lib/postgresql/12/bin/pg_ctl -w -D /usr/local/pgsql/data2/ start 

chmod +x /scripts/startup_cluster.sh

crontab -e 

@reboot /scripts/startup_cluster.sh

                   Теперь давайте зайдем в 1С и создадим базу на втором кластере 

                        

 

#Подключившись к кластеру через psql мы можем создать нового пользователя и задать ему пароль, выдать права и т.д

Создать пользователя user_test
CREATE USER user_test WITH password 'test';

Создать БД db_test и назначить владельцем пользователя traccar_user
CREATE DATABASE db_test OWNER user_test;

Добавить права на бд db_test пользователю user_test
GRANT ALL privileges ON DATABASE db_test TO user_test;

Добавить супер права на постргресс пользователю
ALTER USER user_test WITH SUPERUSER;

Добавить другие права на роль более современная тема чем юзер
ALTER ROLE user_test WITH CREATEDB REPLICATION;

Есть нужно убрать роли то добавляем NOCREATEDB NOREPLICATION;

 

Про непрерывное архивирование.

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

Моя статья про это - //infostart.ru/1c/articles/1495441/

Администрирование данных Архивирование (backup)

См. также

Архивирование (backup) Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    73526    629    45    

88

Архивирование (backup) Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Программа позволяет выполнять автоматическое создание копий файловых и серверных информационных баз 1С Предприятие 8 и размещение копий в облаке Яндекс.Диск, локальном или сетевом ресурсе.

1200 руб.

03.09.2014    15918    21    6    

27

Архивирование (backup) Платформа 1С v8.3 1С:Управление нашей фирмой 3.0 Платные (руб)

Расширение поможет настроить резервное копирование баз SQL в стандартный файл выгрузки баз 1С (*.dt).

2400 руб.

27.08.2024    1452    1    6    

1

HighLoad оптимизация Администрирование СУБД Механизмы платформы 1С Программист Платформа 1С v8.3 ИТ-компания Россия Бесплатно (free)

В данной статье мы рассмотрим, как работает механизм временных таблиц на postgres на платформе 8.3.23 и что изменилось в нем при добавлении новых возможностей в платформе 8.3.25. А также на примере покажу, как понимание работы платформы позволяет оптимизировать СУБД для работы с 1С.

29.10.2024    4466    Tantor    38    

37

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

Анализ и решение ошибок СУБД. Во время реиндексации базы Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Не удалось найти объект "ИмяБазы.dbo._RefSInf21806", так как он не существует, или отсутствуют разрешения. Во время проверки целостности Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Недопустимое имя объекта "dbo._RefSInf21806".

19.09.2024    5758    Xershi    10    

18

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

В статье описала свой опыт аудита 1С базы, порядок действий + статьи, которые сильно помогли в работе.

14.07.2024    8707    limonen    16    

19

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

Ситуация: при обновлении серверной базы данных произошёл сбой и теперь невозможно войти ни в конфигуратор, ни в 1С:Предприятие по причине ошибки, вынесенной в заголовок. Рецепт лечения.

24.05.2024    5257    Kernelbug    9    

20

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

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

23.05.2024    11251    human_new    18    

56
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Sloth 394 08.09.21 17:08 Сейчас в теме
Задержка на запуск скрипта обязательна

Это что за шаманство такое? Почему обязательна? Почему вообще понадобился скрипт, а не был использован стандартный механизм через systemd?

crontab -e

@reboot /scripts/startup_cluster.sh

фпедестал, ящитаю!
2. Vismut 53 10.09.21 12:12 Сейчас в теме
(1)Пробовал, не получалось. Попробуйте проделать это сами и отпишите.
3. Sloth 394 10.09.21 12:48 Сейчас в теме
(2)
Попробуйте проделать это сами и отпишите.

В смысле сделать статью на эту тему? У нас на разных проектах в разных вариантах ПГ запускается через systemd и все ок ;)
4. Vismut 53 10.09.21 12:58 Сейчас в теме
(3)Я говорю за второй кластер, лично у меня не получалось.
Покажите распишите как, что буду благодарен
5. XAKEP 01.01.22 17:53 Сейчас в теме
6. stealth.perm.ru 15.08.24 11:12 Сейчас в теме
Ничего не написано про распределение ресурсов.
Каждый кластер настраивается ведь сам по себе, значит ресурсы выделенные под PG нужно делить на количество созданных кластеров? например память.
7. user797081 15.10.24 14:33 Сейчас в теме
(6)
Это просто нужно держать в голове, учитывая что параметры памяти в postgresql.conf всего лишь ориентир для планировщика. Shared_buffers = 25% от памяти, это не значит что PG их займет, если ему припрет то он и память займет и своп полностью и еще киллера вызовет.
А вот параметры которые считаются на каждое соединение temp_buffers, work_mem тут да нужно садится и считать.
Оставьте свое сообщение