Устанавливаем PostgreSQL 9.4 на Centos 6.5


Статья повествует о том, как установить PostgreSQL 9.4 на Centos 6.5.

Для начала редактируем файл /etc/yum.repos.d/CentOS-Base.repo и добавляем следующую строку в секции [base] и [updates]

exclude=postgresql*

Включаем дополнительный репозиторий:

yum localinstall http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm -y

Ставим PostgreSQL:

yum install postgresql94-server postgresql94-contrib postgresql-devel -y

После завершения установки - добавляем в автозапуск и стартуем:

chkconfig postgresql-9.4 on
service postgresql-9.4 initdb
service postgresql-9.4 start

Теперь нужно создать пользователя и базу даных в PostgreSQL.
Меняем активного пользователя на postgres и подключаемся в консоль:

su - postgres
psql

Создаем базу и разрешаем пользователю с ней работать:

CREATE DATABASE dbname;
CREATE USER dbuser WITH PASSWORD 'myPassword';
GRANT ALL PRIVILEGES ON DATABASE dbname to dbuser;
\q

Нажимаем Ctrl+D что бы вернуться назад в сессию пользователя root.

Что бы удостовериться что пользователь создан нормально выполните:

psql -Udbuser -ddbname -hlocalhost -W

С большой вероятностью Вам выдаст следующую ошибку:

psql: FATAL: Ident authentication failed for user "djangodbuser"

Для того что бы ее устранить откройте для редактирования файл /var/lib/pgsql/9.4/data/pg_hba.conf, найдите в нем следующие строки и замените ident на password:

host    all             all             127.0.0.1/32            ident
host    all             all             ::1/128                 ident

После сохранения файла перезапустите PostgreSQL:

service postgresql-9.4 restart

Можно повторить:

psql -Udbuser -ddbname -hlocalhost -W

Все должно работать. Если не работает - оставьте коментарий.

Драйвер PostgreSQL для PHP

Устанавливается через pecl:

pecl install pdo_pgsql

Слудущая ошибка при установке - не смертельна:

configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
configure: error: Cannot find libpq.so. Please specify correct PostgreSQL installation path

Фиксы:

ln -s /usr/pgsql-9.4/include/libpq-fe.h /usr/local/include/libpq-fe.h
ln -s /usr/pgsql-9.4/lib/libpq.so /usr/local/lib/libpq.so

Следующей ошибкой может выскочить:

/var/tmp/PDO_PGSQL/php_pdo_pgsql_int.h:27:28: error: libpq/libpq-fs.h: No such file or directory
/usr/local/include/libpq-fe.h:29:26: error: postgres_ext.h: No such file or directory

И вообще оно будет плеваться, что не может найти то или другое. Устраняется:

for f in $(ls /usr/pgsql-9.4/include/); do
ln -s /usr/pgsql-9.4/include/"$f" /usr/local/include/"$f";
done

Драйвер PostgreSQL для python:

pip install psycopg2

Слудущая ошибка при установке - не смертельна:

Error: pg_config executable not found.

Фикс:

ln -s /usr/pgsql-9.4/bin/pg_config /usr/local/sbin/pg_config

Share Button
(Visited 2 922 times, 1 visits today)

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

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