Установка Сервера Баз Данных
Лицензия PostgreSQL
PostgreSQL распространяется по классической лицензии BSD. Эта лицензия не содержит ограничений на то, как будет использоваться исходный код. Полный текст
Для ОС семейства Windows
Для установки PostgreSQL загрузите последнюю 64- или 32-разрядную версию Свободно распространяемого SQL сервера отсюда в зависимости от разрядности вашей ОС.
Запустите установщик ( на примере postgresql-9.6
).
после старта установщика пройдет инсталляция необходимых файлов
и Вы увидите следующее сообщение:
Нажмите Next>
Выбираете место расположения исполняемых файлов SQL-сервера.
Нажмите Next>
Если в конце установки возникнет ошибка инициализации базы данных, нужно установить права на папку data
для всех пользователей. Т.к. инициализация происходит от имени postgres, который не имеет прав на редактирование данных в этом каталоге. После этого запустите установку повторно.
После определения папки нажмите Next>
Нужно определить пароль пользователя windows "postgres", который будет владельцем папки и службы SQL-Сервера. Если пользователя в системе нет, то он будет создан. Обращаем Ваше внимание, что при наличии в системе пользователя "postgres", он должен обладать правами на запуск служб. Не назначайте владельцем администратора в целях безопасности.
Нажмите Next>
Задайте номер порта, на котором будет работать SQL-сервер. По умолчанию это 5432. Не изменяйте без необходимости.
Нажмите Next>
выбирайте язык кластера БД как показано на рисунке.
Нажмите Next>
Необходимые настройки сделаны. Нажмите Next>
Дождитесь окончания установки.
нажмите Finish>
Установка SQL-сервера завершена!
Произведите его настройку. Файлы настройки сервера находятся в папке data
.
Для Linux
Установка PostgreSQL на Linux приведена на примере Ubuntu 16.10. Подробности и установку на другие версии ОС смотрите на официальном сайте www.postgresql.org. Там же можно получить последнюю версию PostgreSQL.
Для установки последней версии (на данный момент это 9.6) добавьте в файл /etc/apt/sources.list.d/pgdg.list
строку
deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main
импортируйте ключ
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | \
sudo apt-key add -
sudo apt-get update
после чего можно установить версию 9.6
sudo apt-get install postgresql-9.6
Настройка пользователя
При установке сервера в системе создается пользователь postgres
с паролем postgres
. Но для работы вам этого не достаточно. Необходимо задать пароль для одноименного пользователя уже в рамках базы данных. Для этого запускаем консольный клиент psql с права пользователя postgres:
sudo -u postgres psql
выполняем запрос
ALTER USER postgres with encrypted password 'значение пароля для суперюзера';
Где 'значение пароля для суперюзера' - пароль для подключения к серверу под пользователем postgres.
файлы настройки сервера находятся /etc/postgresql/{версия севера}/main
настройте их в соответствии с описанием.
Настройка сервера
Подключение к сети
Для нормального функционирования сервера в локальной сети необходимо откорректировать файл конфигурации. Для этого откройте файл pg_hba.conf
.
В конце файла найдите строки:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
и допишите строку:
host all all АДРЕС МАСКА md5
где АДРЕС - адрес вашей локальной сети, МАСКА - маска подсети, с которой должен работать сервер, например:
host all all 192.168.1.1 255.255.255.0 md5
Разрешаем соединения по TCP/IP.
В конфигурационном файле postgresql.conf
раскоментируем строку #listen_addresses = 'localhost'
удалив символ #.
listen_addresses = 'localhost'
Чтобы подключаться к серверу с других машин, значние 'localhost' надо заменить на IP адрес машины, или 0.0.0.0, или просто поставить '*'. Все необходимые подробности вы можете найти в комментариях в конфигурационном файле.
Сервер обрабатывает станции сети в диапазоне IP адресов 192.168.1.0 - 192.168.1.255
После изменений в файле конфигурации SQL-сервер нужно перезагрузить.
Внимание! Ваш межсетевой экран (FireWall) должен допускать соединения к серверу по порту 5432 (заданному Вами при установке).
Конфигурация системного времени
(проблема с отменой перехода на зимнее/летнее время)
Проверьте настройку системного времени на сервере. Часовой пояс Москвы должен быть +3.
Отредактируйте файл конфигурации. Для этого откройте файл
postresql.conf
. Установите значение
timezone='+3'
Конфигурация метода хранения двоичных данных
Если у Вас установлена версия СУБД PostgreSQL 9 или выше, настройте метод хранения двоичных данных. Для этого отредактируйте файл конфигурации. Откройте файл postresql.conf
. Установите значение
bytea_output = 'escape'
Прочие настройки
Откройте файл postresql.conf
. Установите значение
lo_compat_privileges = on