Предварительная настройка СУБД

Настройка СУБД Microsoft SQL Server

Сервер Microsoft SQL Server, на котором будет размещаться база данных Docsvision, должен быть настроен специальным образом.

  1. Переключите режим аутентификации (Authentication) СУБД в положение SQL Server and Windows или Windows.

  2. Отключите опцию Case sensitive collation.

  3. Убедитесь, что на компьютере с СУБД и на предназначенном для установки серверной части компьютере, синхронизированы время и часовой пояс.

  4. В настройках Microsoft SQL Server установите параметры remote access и remote admin connections в значение 1.

    Проверить текущие настройки можно, выполнив процедуру sp_configure.

  5. Включите параметр конфигурации сервера xp_cmdshell, позволяющий системным администраторам контролировать, исполнение расширенной системной процедуры xp_cmdshell (исполнение этой процедуры автоматически разрешается в Docsvision, только если явно задан каталог для хранения записей журнала).

    Если данный параметр отключен, то процедура очистки журнала проводиться не будет.
  6. Убедитесь, что на сервере с Microsoft SQL Server открыт порт 1433 для подключения к СУБД.

Настройка СУБД PostgreSQL

Установите часовой пояс в настройках PostgreSQL.
  1. Откройте конфигурационный файл C:\Program Files\PostgresPro\12\data\postgresql.conf (используйте свой путь установки PostgreSQL).

  2. Измените значение параметров:

    • timezone на Europe/Moscow,

    • lc_messages на en_US.UTF-8.

    • standard_conforming_strings переведите в значение On.

    • Значения параметров shared_buffers, temp_buffers, work_mem, maintenance_work_mem увеличьте соразмерно имеющемуся дисковому пространству и размеру доступной оперативной памяти. С документацией по параметрам можно ознакомиться на сайте PostgreSQL.

    • Аналогичным образом увеличьте значение параметра effective_cache_size, см. подробнее на сайте PostgreSQL.

    • Установите параметр plan_cache_mode в значение force_generic_plan. Подробнее о параметре см. на сайте PostgreSQL.

    • Добавьте параметр checkpoint_completion_target со значением 0.9. Подробнее о параметре см. в сети интернет.

    • При необходимости выполните VACUUM FULL базы данных.

  3. Сохраните изменения и перезапустите PostgreSQL.

  4. Установите службу PgAgent.

  5. Если для подключения к PostgreSQL планируется использовать аутентификацию Windows, необходима дополнительная настройка СУБД.

  6. Для пользователя, от имени которого будет выполняться инициализация БД при первоначальной настройке Docsvision и последующее управление, необходимы права SUPERUSER.

Настройка PostgreSQL для использования аутентификации Windows

  1. Создайте в PostgreSQL пользователей и назначьте для пользователей соответствующие права:

    1. Для работы сервера Docsvision, сервиса полнотекстового поиска и файлового сервиса может использоваться одна учетная запись.

    2. Пользователя, от имени которого будет работать pgAgent.

      Если имя доменной учетной записи пользователя или сервисной учетной записи содержит буквы верхнего регистра (например, company\Sidorov.G), в PostgreSQL необходимо добавить двух пользователей:

      • С сохранением оригинального регистра в имени, а именно: Sidorov.G.

      • С использованием букв только нижнего регистра, а именно: sidorov.g.

  2. В файл pg_hba.conf добавьте строки:

    host all all all sspi map=mymap
    host all all all md5
  3. В файл pg_ident.conf добавьте строки сопоставления пользователей Windows с пользователями СУБД, созданными ранее:

    mymap service@COMPANY service (1) (2)
    mymap petrov.b@COMPANY petrov.b
    mymap postgres@COMPANY postgres (3)
    1 имя-пользователя-в-домене@название-домена.
    2 service — имя пользователя в СУБД PostgreSQL.
    3 Доменный пользователь, от имени которого будет запущен pgAgent.
  4. Запустите сервис PostgreSQL под учетной записью домена, в котором зарегистрированы пользователи из предыдущего шага.

  5. В настройках службы "PostgreSQL Scheduling Agent — pgAgent" измените пользователя на доменного пользователя из шага ранее (в данном примере: postgres@COMPANY).

  6. Измените строку запуска службы "PostgreSQL Scheduling Agent — pgAgent" в реестре, в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pgAgent. В значении user нужно указать пользователя PostgreSQL из шага ранее. Например:

    C:\PROGRA~2\pgAgent\bin\pgagent.exe RUN pgAgent host=localhost port=5432 user=postgres dbname=postgres

    За более детальной информацией по использованию аутентификации Windows в PostgreSQL обратитесь к документации PostgreSQL или другим ресурсам.

Установка службы PgAgent

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

  2. Чтобы установить службу PgAgent, выполните шаги из официальной инструкции на данной странице.

    При использовании Postgres Pro Standard потребуется скопировать расширение в директорию Postgres Pro, с помощью команды:

    cp /usr/share/postgresql/11/extension/pgagent* /opt/pgpro/std-15/share/extension/
  3. Служба PgAgent может быть установлена на ОС Linux, Windows и macOS, см. инструкцию по загрузке пакетов установки PgAgent на официальном сайте.

  4. Далее установите PgAgent на компьютер с ОС Windows согласно инструкции.

    Устанавливайте PgAgent после завершения установки PostgreSQL.
Затем выполните следующие шаги:
  1. Откройте файл C:\Users\Пользователь,-запустивший-службу-pgAgent\AppData\Roaming\postgresql\pgpass.conf.

  2. Добавьте в файл pgpass.conf строку:

    адрес-сервера-PGSQL:порт:имя-базы:имя-пользователя:пароль-пользователя

    В строке нужно указать свои значения для адреса сервера PostgreSQL, порта подключения, имени БД (* будет воспринято как все БД), имени и пароля пользователя, под которым выполняется подключение к серверу PostgreSQL.

  3. Запустите или перезапустите службу "PostgreSQL Scheduling Agent — pgAgent".