Как установить и настроить PostgreSQL для 1С и перевести 1С в клиент-серверный режим работы
Краткое содержание:
- Введение
- Отличия файловых и серверных баз
- Установка PostgreSQL
- Установка сервера 1С
- Создание серверной базы
- Публикация на веб-сервере
Введение
Если Ваш бизнес растёт, увеличивается количество сотрудников и продаж, а документов становится всё больше, в какой-то момент Вы можете заметить, что Ваша программа 1С начинает подтормаживать.
Возможно, настало время нарастить вычислительные мощности или перейти на клиент-серверный режим работы.
Если Вы никогда не видели себя в роли системного администратора и слово «сервер» ассоциируется у вас с большой шумной коробкой где-то в тёмной комнате — не переживайте. С этой статьёй Вы сможете без всяких специальных технических навыков развернуть базу 1С в клиент-серверном режиме работы.

Отличия файловых и серверных баз
Но для начала давайте разберёмся, что такое клиент-серверный режим работы и чем он отличается от файлового. Не будем рассматривать данный вопрос с позиции системного администратора — разберём только то, что действительно нужно знать обычному пользователю базы 1С.
У информационных баз 1С есть два режима работы: файловый и клиент-серверный.
В файловом режиме база фактически хранится в виде одного файла. В клиент-серверном режиме используется система управления базами данных (СУБД). Таких систем существует много, но наиболее популярные — Oracle Database, MySQL, MS SQL и PostgreSQL.
В этой статье мы будем рассматривать работу с PostgreSQL (произносится «Пост-Грес-Кью-Эл», но если вы скажите: «Постгре-Эс-Кью-Эл» или «Постгрес» Вас всё равно прекрасно поймут).
Эта система распространяется бесплатно, а разработчики 1С регулярно публикуют специально подготовленные версии для работы с их продуктами на портале ИТС, откуда их можно скачать.
В файловом режиме производительность обычно ниже, чем в клиент-серверном. Он подходит для небольших нагрузок — примерно 1–5 пользователей для комфортной работы, максимум около 10.
Клиент-серверный режим, наоборот, рассчитан на серьёзные нагрузки и может обслуживать десятки и даже тысячи пользователей — всё зависит от мощности Вашего сервера.
Кроме того, у файлового режима есть ограничения по размеру базы. Общий размер базы не должен превышать 10 ГБ, а размер одной внутренней таблицы ограничен:
— до 4 ГБ для платформ до версии 8.3.8
— до 6 ГБ для версии 8.3.8 и новее
Частично проблема решена на новых платформах 8.5 там размер внутреннего файла может достигать 16 ГБ, однако мало кто сейчас перешёл на новые платформы.
Поэтому по мере роста базы и увеличения количества документов переход на клиент-серверный режим становится практически неизбежным.
Если Вы уже столкнулись с ошибкой «Превышен максимально допустимый размер внутреннего файла 1Cv8.1CD»:

То помочь Вам сможет проведении операции «Тестирование и исправление информационной базы» сокращённо ТиИ со сжатием и реструктуризацией таблице информационной базы:

Или же можно выполнить переход на клиент-серверный режим работы.
Давайте ниже сравним основные отличия файлового и клиент-серверного режимов в удобной таблице:

| Критерий | Файловый режим | Клиент-серверный режим |
| Где хранится база | В файле (.1CD) на сетевом диске или локальном компьютере | В сервере СУБД (MS SQL Server, PostgreSQL, Oracle и др.) |
| Архитектура | Есть прямой доступ к файлу | Работа через сервер 1С и сервер СУБД |
| Производительность | Ниже, особенно при большом количестве пользователей | Значительно выше, оптимизировано для многопользовательской работы |
| Количество пользователей | Обычно до 3–5 комфортно, максимум ~10–15 | Десятки, сотни и даже тысячи пользователей |
| Нагрузка на сеть | Высокая (передаются большие объемы данных) | Ниже (передаются только результаты запросов) |
| Надежность | Ниже, выше риск повреждения файла базы | Выше, используются механизмы СУБД и транзакции |
| Безопасность | Ограниченная | Более высокая, разграничение прав на уровне сервера и СУБД |
| Резервное копирование | Простое — копирование файла | Через инструменты СУБД, более гибкое |
| Масштабируемость | Плохая, при росте базы сильно падает скорость | Отличная, можно увеличивать ресурсы сервера |
| Обслуживание | Простое, не требует администратора СУБД | Требуется администратор сервера и СУБД |
| Стоимость внедрения | Минимальная | Выше (сервер, лицензии СУБД, администрирование) |
| Отказоустойчивость | Низкая | Высокая (резервирование, кластеры) |
| Размер базы | Не должен превышать 10 ГБ, а размер внутренней таблицы — 4 ГБ | Практически без ограничений |
| Подходит для | 1–5 пользователей | От 3-х до почти бесконечности |
Как вы могли заметить, у клиент-серверного режима работы есть как плюсы, так и минусы, однако преимуществ всё же больше.
Теперь перейдём от теории к практике. Установим СУБД, сервер 1С, развернём серверную базу и опубликуем её на веб-сервере.
Но прежде нужно сделать важную оговорку: для корректной работы потребуется приобрести продукт «Сервер МИНИ» от 1С и зарегистрировать его на портале ИТС.
Сделать это можно самостоятельно, но если у вас возникнут сложности — вы всегда можете обратиться за помощью. Мы являемся официальными партнёрами компании 1С и готовы помочь с настройкой и запуском.
Установка PostgreSQL

Итак после того как Вы приобрели сервер и зарегистрировали его на ИТС скачайте последний релиз PosgreSQL по этой ссылке:
По возможности закройте все открытые программы и запустите скачанный установщик:

Выберите место установки программы и папку для будущего размещения базы данных. Обязательно установите флажок «Install as a service» (Установить как сервис), затем нажмите кнопку «Next»:

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

Если во время установки появится сообщение «The ‘SecondaryLogon’ serviceisnotrunning»:

То откройте Диспетчер задач, перейдите на вкладку «Службы» и запустите службу «seclogon». Для этого нажмите правой кнопкой мыши по данной службе и в открывшемся контекстном меню выберите «Запустить»:

По окончании процесса установки снимите флажок с пункта «Launch Stack Builder at exit» и нажмите кнопку «Finish»:

Убедиться, что установка прошла успешно и служба запущена, можно в Диспетчере задач. Для этого перейдите на вкладку «Службы» и проверьте, что служба «pgsql» находится в состоянии «Выполняется»:

Теперь необходимо зарегистрировать утилиту администрирования серверов 1С. Для этого в строке поиска рядом с кнопкой «Пуск» введите «регистрация утилиты…» и запустите найденное приложение от имени администратора:

При успешной регистрации утилиты появится данное сообщение:

Установка сервера 1С
Актуальную версию сервера 1С и технологической платформы также можно скачать с портала ИТС
Распакуйте скачанный архив, запустите Setup.exe и в окне установки нажмите кнопку «Далее»:

Выберите необходимые для установки компоненты. Если платформа ранее не была установлена, выберите все компоненты, как показано на изображении ниже:

Если сервер ранее не устанавливался, выберите пункт «Создать пользователя USR1CV8» и задайте пароль для данного пользователя. Пароль обязательно должен отличаться от пароля пользователя СУБД, который мы задавали при установке PosgreSQL:

Установленные флажки оставьте без изменений и нажмите кнопку «Далее»:

По завершению установки нажмите кнопку «Готово»:

Создание серверной базы
На данном этапе мы развернём информационную базу в клиент-серверном режиме и настроим доступы к ней в приложении для запуска, также называемой тонким клиентом.
Запустите приложение «Администрирование серверов 1С предприятия»:

Разверните спойлеры, нажмите правой кнопкой мыши на пункт «Информационные базы», в контекстном меню выберите «Создать» и далее нажмите «Информационная база»:

В открывшемся окне создания новой информационной базы задайте имя базы, например «trade» (если это «Управление торговлей»), в полях «Имя» и «База данных». Имя в обоих полях должно совпадать:

В поле «Сервер баз данных» укажите «localhost», а тип СУБД выберите «PostgreSQL»:

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

Установите флажок «Создать базу данных в случае ее отсутствия». Если база создаётся как тестовая (не рабочая), дополнительно установите флажок «Установить блокировку регламентных заданий». При необходимости блокировку можно будет снять позже.
Нажмите кнопку «ОК» — СУБД создаст новую информационную базу.
Теперь добавим созданную базу в приложение. Для этого запустите 1С предприятие с ярлыка на рабочем столе и в открывшемся окне нажмите кнопку «Добавить»:

Выберите пункт «Добавление в список существующей информационной базы» и нажмите «Далее»:

В самом верхнем поле укажите удобное для Вас имя информационной базы.
Выберите пункт «На сервере 1С:Предприятия» и заполните поля:
- «Кластер серверов» — в нашем случае «localhost»;
- «Имя информационной базы» — укажите созданное ранее имя.

После чего нажмите кнопку «Далее» и «Готово»:

Теперь в списке информационных баз для запуска будет доступна созданная клиент-серверная база как в режиме «1С:Предприятие», так и в режиме «Конфигуратор»:

При первом запуске в любом из режимов потребуется активировать лицензию (ввести регистрационный номер и ПИН-код) для сервера и платформы.
После этого Вы сможете использовать базу в клиент-серверном режиме.
Публикация на веб-сервере
Если есть необходимость подключения к Вашей базе извне, следующим шагом будет открытие портов и публикация информационной базы на веб-сервере, например Apache или IIS.

Скачать веб-сервер Apache актуальной версии
Итак, откроем порты! Это необходимо для того, чтобы можно было подключаться к СУБД с другого устройства.
Для начала откройте Панель управления, переключите режим просмотра на «Мелкие значки» и выберите «Брандмауэр Защитника Windows»:

Далее нажмите «Дополнительные параметры»:

Выделите раздел «Правила для входящих подключений» и нажмите «Создать правило…»:

В открывшемся окне выберите пункт «Для порта» и нажмите кнопку «Далее»:

В «Определенные локальные порты» укажите порт «5432» и нажмите кнопку «Далее»:

Выберите пункт «Разрешить подключение» и нажмите «Далее»:

Установленные флажок оставьте без изменений и нажмите «Далее»:

В поле «Имя» задайте любое название правила, например «PGSQL», и нажмите «Готово»:

Теперь практически тоже самое сделаем для исходящего подключения. Выберите пункт «Правила для исходящего подключения» и нажмите «Создать правило…»:

Выберите пункт «Для порта» и нажмите «Далее»:

Укажите порт «5432» и нажмите «Далее»:

Выберите пункт «Разрешить подключение» и нажмите «Далее»:

Затем задайте имя правила и нажмите кнопку «Готово»:

Перейдём к установке Apache. Скачанный архив с веб-сервером необходимо распаковать и разместить на диске «C». Желательно не размещать файлы в каких-либо вложенных папках, а распаковать архив напрямую в каталог C:\Apache24.
Теперь откройте папку «Apache24», затем папку «conf» и найдите файл «httpd.conf». Откройте его с помощью «Блокнота» или любого другого текстового редактора.

Найдите строку «ServerName»:

Нажмите правой кнопкой мыши по значку «Пуск» и запустите «Терминал»:

Введите команду ipconfig, чтобы узнать ваш IP-адрес.:

Скопируйте значение из строки «IPv4-адрес»:

Вставьте этот адрес после «ServerName» вместо «www.example.com:80», предварительно удалив символ «#»:

Сохраните файл и запустите командную строку от имени администратора, чтобы установить службу Apache.
Для этого выполните команду:
cd C:\Apache24\bin
затем:
httpd.exe -k install

После этого откройте Диспетчер задач, перейдите на вкладку «Службы» и запустите службу «Apache2.4»:

Удостовериться в том, что всё работает можно следующим образом: откройте браузер, введите в адресную строку Ваш IP-адрес и нажмите Enter. Если видите надпись «Itworks!», значит Вы всё сделали правильно!

Теперь опубликуем базу! Запустите программу доступа 1С от имени администратора:

Откройте базу в режиме конфигуратора:

Нажмите кнопку «Администрирование» и далее «Публикация на веб-сервере…»:

Имя информационной базы и веб-сервер заполнятся автоматически, а каталог нужно создать и выбрать вручную. Например, как это показано на изображении ниже:

Нажмите кнопку «Опубликовать» и подтвердите перезапуск веб-сервера, нажав «Да»:

Теперь, если в браузере ввести ваш IP-адрес и через слэш указать имя информационной базы, она откроется в режиме веб-клиента:

Остался последний вопрос: как подключаться с других компьютеров вне вашей сети?
Для этого можно использовать разные способы, например протокол SSH, но самый простой — подключить статический IP-адрес у провайдера. Такая услуга есть у многих провайдеров и обычно стоит не дороже 100 рублей в месяц.

Также не лишним будет установить SSL/TLS-сертификат. В протоколе передачи данных HTTPS для шифрования используется криптографический протокол TLS (ранее SSL), а сертификат необходим для подтверждения подлинности сервера и установления защищённого соединения между клиентом и сервером. Проще говоря, чтобы соединение было защищённым, и пользователь мог быть уверен, что подключается к настоящему серверу.