Установка PostgreSQL на FreeBSD

Для одного проекта разработчики затребовали PostgreSQL в качестве СУБД. В принципе очень хорошая бесплатная СУБД для высоконагруженных систем. Справляется там, где MySQL уже не хватает.
Устанавливаем из портов:
/usr/ports/database/postgresql83-server/

для сборки в postgres базы в KOI-8 в мэйкфайл секцию CONFIGURE_ARGS дописать
--enable-locale \
--enable-multibyte=KOI8 \
--enable-recode

с дефолтной настройкой этого делать не надо

make
опции оставляю по умолчанию

В этот момент инсталятор предложит сдампить все базы перед тем как устанавливать новую версию.
Если до этого стояла более ранняя версия - дамп сделать крайне желательно, используя утилиту pg_dump.
Если до этого PostgreSQL установлен не был - просто игнорируем это сообщение.

make install

запускаем инициализацию postresql
Обратите внимание, что инициализацию БД нужно выполнять с правами того
пользователя, от имени которого процесс будет в дальнейшем
запускаться, и это должен быть не root. Если Вы ставили PostgreSQL из
коллекции портов, то для

для кои-8
/usr/local/etc/rc.d/postgresql initdb --encoding=KOI8 --locale=ru_RU.KOI8-R

для utf-8
/usr/local/etc/rc.d/postgresql initdb

но лучше так
su -l pgsql -c "initdb -E KOI8 -D /usr/local/pgsql/data"

получим надпись если все верно:
Файлы, сопутствующие этой системе баз данных, будут
принадлежать пользователю "pgsql". Этот пользователь
также должен быть владельцем процесса сервера.
Кластер баз данных будет инициализирован с локалью ru_RU.KOI8-R.
The default text search configuration will be set to "russian".

Если надо, правим конфиг /usr/local/pgsql/data/postgresql.conf

в /etc/rc.conf
postgresql_enable="YES"

запускаем
/usr/local/etc/rc.d/postgresql start

По умолчанию PostgreSQL слушает порт 5432. Если установлен файрвол, необходимо минимально разрешить коннекты по порту 5432 на адрес localhost с самой серверной машины.
Открывать 5432 порт наружу не рекомендуется. Правило для ipfw будет выглядеть так (номер правила может быть любым, ввиду индивидуального построения таблиц файрвола):
ipfw add 01000 allow tcp from me to localhost 5432

сменить каталог баз данных можно так
postgresql_data="/var/pgsql/data"
postgresql_class="postgres"

Поделиться

Опубликовать в Facebook
Опубликовать в LiveJournal

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>