Установка (Install) PostgreSQL

Пункты с маркировкой (дополнительно) приведены справочно, действий не требую

Подготовка

sudo apt update && sudo apt dist-upgrade -y && sudo apt autoremove
sudo timedatectl set-timezone Asia/Yekaterinburg
sudo apt-get install nano
sudo apt-get install mc
sudo mc

Установка locale

Инструкция help.ubuntu.ru

Просмотр установленных locale

locale -a | grep ru

Установка locale, через консоль (рекомендуемый вариант)

sudo locale-gen ru_RU
sudo locale-gen ru_RU.UTF-8

Проверка установики

locale -a | grep ru

Операции с locale (дополнительно)

Альтернативный вариант или через графический интерфейс

sudo dpkg-reconfigure locales

Переустановка locale, выполнять в случае проблем

sudo apt-get install --reinstall locales

Обновление locale, Выполнять в случае проблем

sudo update-locale
sudo update-locale LANG=ru_RU.UTF-8

Проверка locale по умолчанию

sudo nano /etc/default/locale

Если должны быть RU, то привести к виду ниже

LANGUAGE=ru_RU:ru
LANG=ru_RU.UTF-8

Установка языкового пакета language-pack-ru (дополнительно)

Важно! ubuntu станет русская Выполнять в случае проблем в приложении

sudo apt-get install language-pack-ru
sudo reboot

Установка PostgreSQL

postgresql.org - Linux downloads (Ubuntu)

Создать файл с репозиторием

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

Импортировать ключ подписи

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

Установить последнюю версию

sudo apt-get update
sudo apt-get -y install postgresql

Если нужно установить определенную версию например 14

apt-get install postgresql-14

устаревшие версии: postgresql-11, postgresql-10, postgresql-9.6

Проверить работу кластера, посмотрев список установленных кластеров

pg_lsclusters

Запуск кластера

sudo service postgresql start

Остановка кластера

sudo service postgresql stop

Перезагрузка конфигурации

sudo service postgresql reload

Настроить pg_hba.conf

Настройка доступа по сетям, в файле pg_hba.conf

Пример для версии 14

sudo nano /etc/postgresql/14/main/pg_hba.conf

Доступ для подсетей через md5

# IPv4 local connections:
host    all             all             10.128.0.0/24           md5
host    all             all             10.129.0.0/24           md5
host    all             all             10.130.0.0/24           md5

Доступ без авторизации (не рекомендуемый вариант) (дополнительно)

# IPv4 local connections:
host    all             all             10.128.0.0/24           trust
host    all             all             10.129.0.0/24           trust
host    all             all             10.130.0.0/24           trust

Доступ для DataLens (дополнительно)

# DataLens
host    all             all             178.154.242.176/28      trust
host    all             all             178.154.242.192/28      trust
host    all             all             178.154.242.208/28      trust
host    all             all             178.154.242.128/28      trust
host    all             all             178.154.242.144/28      trust
host    all             all             178.154.242.160/28      trust

Настроить postgresql.conf

Настройка доступа по адресам, в файле postgresql.conf

Пример для версии 14

sudo nano /etc/postgresql/14/main/postgresql.conf

Доступ со всех адресов (изменить)

# - Connection Settings -
listen_addresses = '*'

Настройка авторизации (проверить)

# - Authentication -
password_encryption = scram-sha-256     # scram-sha-256 or md5

Настройка SSL (изменить)

# - SSL -
ssl = on
ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem'
ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key'

Доступ только локально

# - Connection Settings -
listen_addresses = 'localhost'

Установка пароля postgres

Зайти в psql

sudo -u postgres psql template1

Выполнить скрипт изменяющий пароль. Важно! [Пароль] заменить на нужный

ALTER USER postgres with encrypted password '<PASSWORD>';

Выйти из psql

\q

Перезапустить PostgreSQL

sudo /etc/init.d/postgresql restart

Проверка версии Postgres (дополнительно)

Версия psql

sudo psql --version

Установленные пакеты

dpkg -l | grep postgres

Удаление Postgres (дополнительно)

Список установленных пакетов

dpkg -l | grep postgres

Удаление пакетов

sudo apt-get --purge remove <НазваниеПакета>

Проверка удалённых пакетов

dpkg -l | grep postgres

Дата изменения: