PostgreSQL и 1С Предприятие

«Да, забудьте Вы об SQL Express» говорю я многим своим клиентам последние так года два.

Отчасти сам виноват, в 2015-ом опубликовал видео «1С 8.3 и SQL Server 2014 Express».

И это видео для многих почему-то сработало как сигнал на внедрение версии Express.

Несмотря на то, что в этом уроке я говорю о серьёзных ограничениях этой версии СУБД, да, собственно как и Microsoft, прямо пишет, – «Эту бесплатную версию стоит использовать только для теста и ознакомления».

 

(Цель видео в том, чтоб показать ограничения файлового варианта работы в 1С, как перейти на клиент-сервер и показать ограничения версии Express).

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

Отличия PostgreSQL от MS SQL читайте здесь >>

Но большинству конечно ограничения не позволят работать «нормально» в клиент-сервере.

Как минимум нужна версия Standard.

 

Альтернативой MS SQL всегда был и остается PostgreSQL.

Конечно, данная тема также подымается и на курсе: Администратор 1С!

 

Абсолютно бесплатная*  СУБД с реализацией как под Linux, так и на Windows.

Бытует мнение, что PostgreSQL нормально работает только на Linux.

Но это ужа давно не так (Хоть изначально он и разрабатывался под UNIX-подобные платформы).

Сегодня PostgreSQL можно смело использовать и на Windows , (Пользователей 50-70- одновременно работающих в 1С будет держать нормально, до 15-ти, даже не нужно никаких доп. настроек!).

Если у Вас пользователей будет больше, тогда лучше брать MS SQL.

Конечно, в сети можно встретить примеры, (особенно в последнее время) когда  PostgreSQL  работает на сотнях пользователей в 1С, но я такого в живую не видел (чтоб без косяков, при большом количестве запросов) чтоб СУБД работала также быстро и хорошо, как и на MS SQL standard, например.

Вот одна из причин: PostgreSQL не умеет работать многопоточно!

Иногда в интернете, можно наткнуться на статью что PostgreSQL грузит только одно ядро на 100%, и мол не работает с многоядерными архитектурами.

 

Знайте, что это не так! (Вернее не совсем так!)

PostgreSQL грузит все ядра, только если есть соответствующее количество запросов .

Один большой запрос действительно может  на 100% загрузить одно ядро вашего сервера так как

1 запрос = 1 поток! (На этой СУБД).

 Но если запросов будет много, соответственно и все ядра будут задействованы также.

PostgreSQL способен задействовать все ядра вашего сервера!

Каждое ядро может дать нам несколько потоков, например как минимум два, и уже, чтоб задействовать 2 ядра (4 потока) будет достаточно отправить на СУБД 3 – 4 запроса.

Помните?

1 запрос = 1 поток.

Другими словами, не распараллеливается выполнение одного запроса.

Нет многопоточности! в рамках одного запроса  – это одна из причин, почему PostgreSQL работает медленнее MS SQL.

Один большой запрос может стать «узким местом» в производительности вашей 1С на этой СУБД.

Есть, конечно, еще много вопросов по «бєкапу», настройке и оптимизации PostgreSQL в том числе и под крупные внедрения, но это все подробно мы будем обсуждать уже на курсе: Установка и настройка 1С 2017.

 

Как известно без специальных «патчей» от компании 1С СУБД-шка работает не стабильно, вылетает + есть  проблемы с производительностью.

Но с «пропатченой» таких серьезных проблем обычно не возникает.

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

«Патчи» как раз правят эти и другие «косяки 1С» в официальном релизе.

 

Теперь о главном!

В феврале 2015 года наиболее известные российские разработчики PostgreSQL основали компанию «Постгрес Профессиональный» (Postgres Professional), целью которой стало развитие СУБД PostgreSQL и оказание полного спектра связанных с ней услуг.

И если раньше я скачивал PostgreSQL на сайте 1С (Поддержка пользователей), то сегодня

Я беру дистрибутив на сайте postgrespro.ru (Как для Windows так и для Linux).

Внимание Важно!

PostgresPro Standard и Enterprise – платные!

https://postgrespro.ru/products/postgrespro#license

Качайте просто “пропатченую 1С” по ссылке ниже:

https://postgrespro.ru/products/1c

Enterprise – действительно очень дорогой продукт, а вот Standard на момент написания статьи, приобретается как годовая поддержка.

Другими словами Вы покупаете поддержку на год и получаете версию Standard в *подарок*.

 

Второй способ получить PostgreSQL бесплатно:

Для этого нужно скачать на сайте поддержки пользователей 1С, нужный Вам дистрибутив PostgreSQL со всеми патчами для 1С, и работать бесплатно на этой СУБД.

 

На момент написания статьи, доступна версия PostgreSQL 9.6.5 для 1С Предприятия.

Все в *свободном доступе*, можно скачать и установить у себя.

Делюсь ссылкой, друзья >>>

1

Дело в том, что Postgres Pro (основанный на PostgreSQL) уже содержит все нужные «патчи» для 1С Предприятия.

И Вы не «паритесь» поиском каких-то  критически важных «патчей» все уже включено в эту сборку, это удобно.

Даже для Windows включены дополнительные «патчи» повышающие отказоустойчивость еще не успевшие войти в стабильный релиз, например, включены «патчи», которые исправляют проблему с правами доступа и критический баг с остановкой Postgres.

 

Установка:

Качаем инсталлятор на сайте по ссылке выше.

И приступаем к установке.

1

Конечно я рекомендую ставить СУБД на Windows Server 2016.

Установка PostgreSQL на Windows совсем не сложная, но во избежание каких-то возможных проблем, смотрите ниже в скриншотах весь процесс пошагово: 

2

Как видно уже на скрине, сборка действительно под 1С-ку. “PostgresPro 1C 9.6”.

4

Принимаем условия лицензионного соглашения “Принимаю”.

И установим все нужные компоненты.

Клик по кнопке “Далее”.

5

Укажем каталог где будет установлен сам PostgresPro (Можно оставить каталог по умолчанию).

 

6

Клик по кнопке “Далее”.

Теперь нужно указать каталог для наших баз данных.

8

11

На вкладке параметров порт 5432 можно оставить по умолчанию (Если у Вас он свободный на момент установки).

Затем птичку “Подключение с любых IP адресов” убираем если Сервер 1С и СУБД будут располагаться на одном сервере.

Иначе оставляем все как есть.

Локаль: – Russian, Russia.

Супер пользователя можно оставить по умолчанию “postgres”.

И обязательно создадим пароль для него.

9

Птичку возле “Провести оптимизацию параметров” оставляем по умолчанию.

12

И клик по кнопке “Установить”.

Все готово! можно создавать базу используя утилиту администрирования серверов 1C.

Для удобства администрирования, рекомендую еще установить дополнительно и PGAdmin 4.

 

Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>

5 комментариев

Оставьте ответ

[an error occurred while processing the directive]
[an error occurred while processing the directive]