Новости экономики и финансов. Курсы валют, ситуация на биржах, акции, котировки, аналитика: 💫 💫 💫 💫 💫 💫 читайте на сайте

Смещение Дат При Создании Базы 1C Postgresql • 5 задержка выполнения

В силу исторических особенностей развития, системы 1С некоторых организаций оказываются неспособными к интенсивной работе на PostgreSQL.

1С:Эксперт по технологическим вопросам
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Если мы время от времени хотим проверять, что база корректно достается из архива, то имеет cмысл автоматизировать шаг 0 в батнике командами psql, dropdb, createdb добавлено по просьбам читателей. Работа с PostgreSQL: как создать и удалить базу данных, настроить бэкап, добавить пользователя Обращайтесь в форму связи

Установка сервера 1С:Предприятие в связке с CentOS 7 и PostgreSQL

Так как 1С работает только с русской локализацией, то необходимо сразу устанавливать систему с учётом этого. В дальнейшем все действия производятся от имени суперпользователя.

Для проверки доступности необходимой локали используем команду:

Далее настраиваем статический IP-адрес, маску подсети, шлюз по умолчанию, DNS.

Предварительно делаем бекап стандартного файла конфигурации сетевого интерфейса:

Далее конфигурируем интерфейс (адреса выставляем свои):

В файле /etc/hostname изменим имя хоста на более удобное: 1с-srv.

Сопоставим IP с именем хоста для удобства обращения к серверу. В файле /etc/hosts добавляем запись:

Так же необходимо это соответствие будет прописать на все клиентах, которые будут работать с сервером 1С. В операционной системе Windows это прописывается в файле: C:\Windows\System32\drivers\etc\hosts

Также редактируем файл /etc/sysconfig/network, прописываем имя хоста и отключим адресацию IPv6:

Отключаем использование IPv6 на уровне ядра. В файле /etc/sysctl.conf добавляем строчки:

После всех манипуляций обязательно рестарт сети: systemctl restart network и проверяем работу введенной конфигурации.

Следующим шагом обновляем систему и устанавливаем пакеты программ и библиотек:

Скачиваем необходимые нам пакеты с 1с сервером и PostgreSQL и копируем на сервер:

Назначим владельцем директории /opt/1C автоматически созданного пользователя usr1cv8 и группу пользователей grp1cv8:

Переходим в папку с пакетами PostgreSQL:

Переключаемся на пользователя postgres (создаётся автоматически при сборке из исходников):

Далее необходимо проинициализировать служебные базы данных с русской локалью:

Если все прошло успешно можно запускать сервер базы данных. Если нужно создать новую системную базу, то необходимо удалить папку /var/lib/pgsql/10/data.

Заходим в базу и задаём пароль для пользователя postgres:

Проверяем локализацию и работоспособность сервера Postgres:

Обязательно редактируем файл /var/lib/pgsql/10/data/pg_hba.conf задаем в нем доступ к базам по паролю, а также передачу данных аутентификации в формате md5 хеш суммы.

После перезагрузки запускаем вручную Postgre и добавляем в автозагрузку:

Следующим шагом задаем конфигурации сервера Postgres.

Здесь нужно ориентироваться на конфигурацию 1С, количество пользователей 1С, объёмы баз, количество операций с базами. Поэтому конфигурирование большей части параметров производится, на запущенном сервере, путём подбора оптимальных показателей. Настройку выполняем путем редактирования файла /var/lib/pgsql/10/data/postgresql.conf

Частично можно ознакомится с параметрами здесь infostart.ru/public/554213/, а также на сайте postgrespro.ru/docs/.

Postgres Pro Standard: Документация: 9.5: 9.9. Операторы и функции даты/времени: Компания Postgres Professional
—if-exists — проверка существования базы
—echo — вывод команд SQL, которые выполнит postgreSQL при вызове
» «

Ежедневник админа: PostgreSQL для 1С 8.3 — резервное копирование

pfl — параметры для информационной базы, а также параметры для информационной базы и пользователя, не зависящие от компьютера пользователя.

1С:Эксперт по технологическим вопросам
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Система запросит имя для новой роли, пароль, а также позволит настроить привилегии например, нужно ли давать права суперпользователя или разрешать создавать другие роли и базы данных. Работа с PostgreSQL: от полного нуля до полного просветления Обращайтесь в форму связи

Решение

Для определения расположения файлов на дисках в PostgreSQL есть понятие Табличное пространство(TABLSEPACE). Разные табличные пространства можно размещать как на разных, так и на одном диске, хотя в последнем смысла не так много.

По умолчанию создается табличное пространство pg_default, у меня для версии 9.6 размещен в каталоге /var/lib/postgresql/9.6/main/base/.

Создание табличного пространства

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

Промокоды на Займер на скидки

Займы для физических лиц под низкий процент

  • 💲Сумма: от 2 000 до 30 000 рублей
  • 🕑Срок: от 7 до 30 дней
  • 👍Первый заём для новых клиентов — 0%, повторный — скидка 500 руб

По условию задачи табличное пространство необходимо разместить в каталоге /mnt/POINT_01/pg_base/, создаем его и пользователя postgres сделаем владельцем

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

Теперь создадим новое табличное пространство, назовем его point_01, в pgAdmin разворачиваем ветку Табличные пространства.

В ветке по нажатию ПКМ откроется меню, выбираем пункт Новый tablespace, в появившейся форме указываем название и местонахождение, и нажимаем кнопку OK. В ветке появится созданное тобличное пространство.

Перенос БД в другое табличное пространтсво

В ветке БД кликаем ПКМ по нужной ИБ, переходим в свойства на закладу Определение и выбираем необходимое табличное простарнство, и нажимаем кнопку OK.

После некоторого ожидания диалог закроется, база перенесена в другое табличное пространство.

Если c БД были установлены соединения, то выведется сообщение об шибке, например:

Для завершения всех соединений с БД необходимо выполнить запрос описанный ниже и повторить перенос:

Как установить сервер 1С в связке с CentOS 7 и PostgreSQL

Решение

Для определения расположения файлов на дисках в PostgreSQL есть понятие Табличное пространство(TABLSEPACE). Разные табличные пространства можно размещать как на разных, так и на одном диске, хотя в последнем смысла не так много.

По умолчанию создается табличное пространство pg_default, у меня для версии 9.6 размещен в каталоге /var/lib/postgresql/9.6/main/base/.

Создание табличного пространства

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

По условию задачи табличное пространство необходимо разместить в каталоге /mnt/POINT_01/pg_base/, создаем его и пользователя postgres сделаем владельцем

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

Теперь создадим новое табличное пространство, назовем его point_01, в pgAdmin разворачиваем ветку Табличные пространства.

В ветке по нажатию ПКМ откроется меню, выбираем пункт Новый tablespace, в появившейся форме указываем название и местонахождение, и нажимаем кнопку OK. В ветке появится созданное тобличное пространство.

Перенос БД в другое табличное пространтсво

В ветке БД кликаем ПКМ по нужной ИБ, переходим в свойства на закладу Определение и выбираем необходимое табличное простарнство, и нажимаем кнопку OK.

После некоторого ожидания диалог закроется, база перенесена в другое табличное пространство.

Если c БД были установлены соединения, то выведется сообщение об шибке, например:

Для завершения всех соединений с БД необходимо выполнить запрос описанный ниже и повторить перенос:

На скриншоте только один из них online я успел удалить пакет postgresql-13 , но у вас оба должны быть online, иначе перенос базы данных не удастся.

1С:Эксперт по технологическим вопросам
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
В силу исторических особенностей развития, системы 1С некоторых организаций оказываются неспособными к интенсивной работе на PostgreSQL. PostgreSQL в Linux: рецепты популярных действий и решения проблем. Обращайтесь в форму связи

Создание резервной копии и восстановление из бэкапа

Для создания резервной копии базы данных используется сложная команда:

Чтобы было проще разобраться, рассмотрим каждый параметр:

  • хост – сервер, на котором располагается БД. Например, можно указать localhost, домен, IP-адрес.
  • имя_роли – имя пользователя PostgreSQL, под которым мы работаем с базой данных.
  • формат_дампа – формат, в котором дамп сохранится на сервере. Доступны следующие форматы: c (custom) – архив .tar.gz, t (tar) – архив .tar, p (plain) – текст без сжатия, обычно .sql.
  • путь_к_дампу – путь, по которому будет сохранена резервная копия.
  • имя_БД – название БД, для которой будет создана резервная копия.

Для выполнения этой команды нужно ввести пароль, который используется при входе в psql от имени указанной роли (mybase в приведенном примере).

Восстановление из резервной копии выполняется аналогичным образом:

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

Мы разобрались с основными действиями и настройками PostgreSQL. На этом все!

PostgreSQL. Размещение БД на другом диске

Создание резервной копии и восстановление из бэкапа

Для создания резервной копии базы данных используется сложная команда:

Чтобы было проще разобраться, рассмотрим каждый параметр:

  • хост – сервер, на котором располагается БД. Например, можно указать localhost, домен, IP-адрес.
  • имя_роли – имя пользователя PostgreSQL, под которым мы работаем с базой данных.
  • формат_дампа – формат, в котором дамп сохранится на сервере. Доступны следующие форматы: c (custom) – архив .tar.gz, t (tar) – архив .tar, p (plain) – текст без сжатия, обычно .sql.
  • путь_к_дампу – путь, по которому будет сохранена резервная копия.
  • имя_БД – название БД, для которой будет создана резервная копия.

Для выполнения этой команды нужно ввести пароль, который используется при входе в psql от имени указанной роли (mybase в приведенном примере).

Восстановление из резервной копии выполняется аналогичным образом:

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

Мы разобрались с основными действиями и настройками PostgreSQL. На этом все!

💥Принимайте участие в опросе и получайте бесплатную консультацию

Related posts