Быстрая установка Postgres SQL








Postgres SQL одна, на мой взгляд, из самых перспективных баз данных.
рассмотрим быструю установку и настройку

сервер
ubuntu-server 16.04
Задачи
Подготовить сервер PostGres SQL для работы по сети
БД при установке системы мы не ставили

ставим сейчас

sudo -s  (дабы каждый раз не писать sudo)
apt-get install postgresql
Введу того что сервер надодиться в отдельно сети, я отключаю фаервол в ubuntu
ufw disable

Теперь проведем настройку
Так как нам надо подключаться к ней по сети
переходим в каталог

cd /etc/postgresql/9.5/main/  

У меня версия 9.5 у вас может быть другая. 

для начала в файле postgresql.conf
расскоментируем
#listen_addresses = 'localhost'

укажем на каких IP сервер будет слушать. В мое случае - все интерфейсы потому делаю так

listen_addresses = '*'
т е слушать ВСЕ
если вам надо указать како-то конкретный IP listen_addresses = '172.17.15.30, 127.0.0.1' (IP сервер БД) 
Так же рассоментируем строку
password_encryption = on
Теперь зададим пароль для пользователя postgres
заходми в оболочку Postgres
sudo -u postgres psql  
ALTER USER postgres with encrypted passwor 'ВАШ_ПАРОЛЬ' Nhbyblfn2016
\q

так же установим пароль UNIX
passwd postgres  
и вообдим пароль тот что и выше
Теперь в этой же папке отроем файл pg_hba.conf


local   all         postgres                          md5
host    all             all             172.17.10.0/24         md5  
(дабы открыть доступ с локальной сети, для всех пользователей ко всем базам)
И перезагрузим сервис PostgresSQL
/etc/init.d/postgresql restart

На счет безопастности - в моем случае настраивалась среда для разработки ПО, тестирования и тп. В "боевой" системе - обязательно надо ограничивать доступ, к конкртеным базам, на опредленные IP адреса, так же открывать в фаерволе только нужный порт 5432 и т п.


Кратко про то как происходит настройка авторизации в файле pg_hba.conf

local      DATABASE  USER  METHOD  [OPTIONS]
host       DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
hostssl    DATABASE  USER  ADDRESS  METHOD  [OPTIONS]

hostnossl  DATABASE  USER  ADDRESS  METHOD  [OPTIONS]

Например

host  testDB test_user 172.17.10.130/32 md5 

Теперь на другом сервер, настроим phppgadmin - удобная утилата для работы с PG

apt-get install phppgadmin

Сразу открываем файл /etc/apache2/conf-enabled/phppgadmin.conf

находим строку Require local и закоментируем ее #Require local или указываем адреса с каких разрешен доступ. Что бы иметь возможность подключаться с удаленных компьютеров. (если это боевая система, то либо указываем конретные IP а лушче вообще потом запретить к нему доступ, открывать когда надо)

после открываем файл

/etc/phppgadmin/config.inc.php

в строке $conf['servers'][0]['host'] = 'localhost'; пропишем адрес нашего сервера PostgresSQL  $conf['servers'][0]['host'] = '172.17.10.131'; 
в строке $conf['extra_login_security'] = true; меняем на $conf['extra_login_security'] = false;
Для того что бы подключаться под пользователем postgres 

заходим по адресу http://my_domen_or_IP/phppgadmin

кликнем по servers и вводим - пользователь postgres пароль - ваш пароль







В завершение хочу сказать в базовая конфигурация PostresSQL рассчитана на работы БД на микроволновке или электрочайнике. Так что высокой производительно - крутить надо.

Комментариев нет:

Отправить комментарий