time

Установка PostgreSQL под Ubuntu, Centos, Arch Linux

install_postgresql.png

PostgreSQL — свободная объектно-реляционная система управления базами данных (СУБД).

Установка PostgreSQL под Ubuntu

Ставим из репозиториев последнюю версию и сопутствующие пакеты

sudo apt-get install postgresql postgresql-contrib

Устанавливаем пароль для пользователя postgres

passwd postgres

Создаем тестовую базу

su - postgres
createdb demodb

Конектимся к тестовой БД:

psql demodb

Список все доступных БД можно посмотреть по команде \l

Управление пользователями. Создание нового пользователя demo:

su - postgres
createuser demo --pwprompt

Удаление пользователя demo:

su - postgres
dropuser demo

Даем все привилегии пользователю demo на таблицу demodb:

psql demodb
GRANT ALL ON DATABASE demodb TO demo;

Конектимся к БД demodb пользователем demo:

psql -U demo -W demodb

Настроем в файле pg_hba.conf (host-based authentication) доступ для пользователя postgres без пароля. Для ubuntu добавим в начало файла /etc/postgresql/8.4/main/pg_hba.conf

local all postgres trust

Для всех остальных пользователей, на локальной машине, доступ будет по паролю, заданому при создании (через команду createuser)

host all all 127.0.0.1/32 md5

Ставим GUI-менеджер pgadmin3

sudo apt-get install pgadmin3

Еще можно поставить phpPgAdmin - веб-ориентированный инструмент для управления PostgreSQL.

Установка PostgreSQL под CentOS

Ставим из репозиториев последнюю версию и сопутствующие пакеты

yum install postgresql84 postgresql84-server

Добавляем демон postgresql в автозагрузку и стартуем

chkconfig postgresql on
service postgresql start

Инициализируем базу

service postgresql initdb

Дальше все как описано в разделе с установкой под Ubuntu, файл pg_hba.conf находиться по другому пути - /var/lib/pgsql/data/pg_hba.conf.

Установка PostgreSQL под Arch Linux

Установка

sudo pacman -Sy postgresql postgresql-libs

Устанавливаем пароль для пользователя postgres

sudo passwd postgres

Инициализация БД

su - postgres -c "initdb --locale en_US.UTF-8 -D '/var/lib/postgres/data'"

Запуск

systemctl start postgresql

Запуск при старте системы

systemctl enable postgresql

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

Для проектирования структуры БД есть две утилиты:

Дополнительное чтиво

blog comments powered by Disqus