Для 1С 8.3 рекомендуется использовать более свежую версию постгреса. Но на деле приходится пробовать несколько версий.
Для 1С 8.2 инструкция аналогична и отличается одной строчкой и чуть другим тюнингом.
Отредактируем локали:
dpkg-reconfigure locales
Нам нужны:
en_US.UTF-8 en_US ISO-8859-1 ru_RU.UTF-8 (ее ставим по умолчанию)
Ставим зависимости:
apt-get install ssl-cert libossp-uuid16 libxslt1.1
Установим пакет libicu48:
cd /tmp wget http://ftp.ru.debian.org/debian/pool/main/i/icu/libicu48_4.8.1.1-12+deb7u3_amd64.deb dpkg -i libicu48*.deb rm libicu48*.deb
Установим PostgreSQL 9.6.5 с postgrespro.ru
https://postgrespro.ru/products/1c_build
sh -c 'echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list' wget --no-verbose -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | apt-key add - && apt-get update apt-get install postgresql-pro-1c-9.6 -y
service postgresql restart su postgres cd
В случае ошибки меняем $(lsb_release -cs) на название дистрибутива. В моем примере stretch
Такая ошибка у меня вылезает только при установке в LXC контейнере proxmox
Сменим пароль внутреннего пользователя:
psql -U postgres -c "alter user postgres with password 'gjyhtgyjhbsudfy7uhYtyujer';"
Где -U postgres — системный пользователь от имени которого будет запущен psql, user postgres — внутренний пользователь БД, ну а gjyhtgyjhbsudfy7uhYtyujer — произвольный пароль который будет задан внутреннему пользователю БД.
Если все ок — появится
ALTER ROLE
Выходим
exit
Напоследок зафиксируем пакеты PostgreSQL, чтобы они не обновлялись из стандартных репозиториев:
apt-mark hold libpq5 postgresql-9.6 postgresql-client-9.6 postgresql-client-common postgresql-common postgresql-contrib-9.6
Служба сама не стартует. Добавляет в автозапуск:
systemctl start postgresql systemctl enable postgresql
Тюнинг PostgreSQL
/etc/postgresql/9.6/main/postgresql.conf
После тюнинга конфига:
service postgresql restart
Тесты показали, что тюнинг бесполезен… Родной конфиг PostgreSQL 9.6 работает лучше без тюна
1 Уведомление