суббота, 12 января 2013 г.

postgresql: быстрый старт

В среднем раз в год приходится ставить постгрес, но очень это мутный процесс и мелочи постоянно забываются.. сделаю заметку.



Установка

FreeBSD
cd /usr/ports/databases/postgresql(нужная_версия)-server
make install clean

или к примеру portinstall postgresql(нужная_версия)-server

При этом инсталлер сам выставит нужные пути, создаст юзера, настройки, скрипты для старта...
Теперь осталось только добавить
postgresql_enable="YES" в /etc/rc.conf
и создать базу
/usr/local/etc/rc.d/postgresql initdb
но этот шаг можно и пропустить, его автоматом обычно делает при запуске службы
/usr/local/etc/rc.d/postgr* start

Debian
apt-get install postgresql

Ручная установка
Имеет смысл только для таких ОС как МСВС, в которой в силу своей "защищённости" и убогости с этой базой грустно.
FAQ, раздел 15.1. Short Version

./configure
gmake
su
gmake install
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test

Создание базы
/usr/local/pgsql/bin/createdb test
или
# su pgsql
$ psql template1

create user puser;
alter user puser with password '1234';
alter user puser with createdb;
\q

$ psql -U puser template1
password:
template1=# create database pdata template=template0 with encoding='KOI8';


(юзер и пути могут меняться, в зависимости от дистра)


Права для работы
в data/pg_hba.conf можно заменить Trust на password, тогда будет авторизация по паролям, иначе только локальная работа.

dump-restore
Рестор 1 базы, сделанный через pg_dump как и mysql:
$ psql -a pdata puser < pdata.sql

Рестор спец форматов или набора баз делается через pg_restore
$ pg_restore dumpfile
(иногда срабатывает psql -f dumpfile)

Дамп бывает
1 базы
$ pg_dump pdata > pdata.sql
всех баз
pg_dumpall > out

Подробнее лучше читать в оригинале

Линки
http://www.postgresql.org/docs/8.3/interactive/index.html
FreeBSD – PostgreSQL установка

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

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