Postgresql - это объектно-реляционная база данных с высокой степенью масштабируемости и SQL совместимым синтаксисом и открытым исходным кодом. Она разрабатывается в калифорнийском университете Беркли. В последнее время PostgreSQL, благодаря своим преимуществам набирает большую популярность наряду с везде используемой mysql.
Вы можете узнать чем отличаются mysql и postgresql в отдельной статье, а сегодня мы рассмотрим как установить Postgresql CentOS 7, а также как выполнить минимальную настройку базы данных для подготовки ее к использованию.
Содержание статьи
Установка Postgresql CentOS
Самый первый шаг заключается в установке программы в вашу систему. Как я уже говорил, база данных довольно популярна, поэтому она есть в официальных репозиториях. Но если вы хотите получить самую свежую версию, то нужно добавить официальный репозиторий:
sudo rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm

В CentOS 6 команда будет выглядеть вот так:
sudo rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-6-x86_64/pgdg-redhat95-9.5-2.noarch.rpm
После того как репозиторий будет добавлен к вашей системе вы можете перейти к установке программы. На данный момент последняя версия Postgresql 9.6. Именно для нее мы добавили репозиторий. Возможно, для более новых версий вам придется посетить сайт и посмотреть не появилась ли новая версия. Установка Postgresql CentOS 7 версии 9.6 выполняется командой:
sudo yum install postgresql96-server postgresql96
Сразу после установки Postgresql сервер еще не готов к использованию, нужно инициализировать необходимые базы данных. Для этого выполните:
/usr/pgsql-9.6/bin/postgresql96-setup initdb
Команде потребуется некоторое время для начальной инициализации. После ее завершения в переменной PGDATA будет сохранен путь к папке с базами данных. В моем случае это /var/lib/pgsql/9.5/data/.
Дальше запускаем сервер баз данных и добавляем его в автозагрузку:
sudo systemctl start postgresql-9.6
$ sudo systemctl enable postgresql-9.6
Настройка Postgresql CentOS 7
Теперь сервер баз данных Postgresql установлен и запущен. Нам осталось проверить как все работает, настроить пользователей и свою первую базу данных. Настройка Postgresql CentOS 7 изначально выполняется только от пользователя postgres поэтому переключаемся на этого пользователя с помощью команды su:
sudo su - postgres
Команда выполняется от имени администратора, потому что иначе у вас спросят пароль, а вы его не знаете. Для доступа к консоли Postgresql будем применять команду psql:
psql
Смотрим информацию о подключении:
\conninfo
Первое что здесь можно сделать, это создать пароль для postgres:
\password postgres
Дальше закройте оболочку командой:
\quit
Пользователь postgres - это аналог суперпользователя для Postgresql. Но не всегда безопасно использовать вход от имени суперпользователя. Нам нужно создать обычного пользователя, который может только управлять базами данных. Для этого выполните в консоли от имени postgres:
createuser --interactive
Дальше нужно ввести имя роли и ответить на несколько вопросов, а также повторить процедуру задания пароля как для postgres. Чтобы вы могли использовать postgresql через терминал от имени этого пользователя добавьте пользователя UNIX:
sudo adduser user
Нам осталось только создать новую базу данных:
createdb test1
Теперь у вас есть все необходимое для полноценной работы с программой.
Установка Phppgadmin CentOS 7
Не очень удобно работать с консольным интерфейсом управления базами данных. Иногда нужно просто и быстро добавить базу данных или создать пользователя. Для этого можно использовать веб-интерфейс phppgadmin. Для установки программы выполните:
sudo yum install phpPgAdmin
Также нужно, чтобы на вашей машине был установлен и запущен веб-сервер Apache. Чтобы перезапустить Apache выполните:
sudo systemctl restart httpd
После завершения установки вы сможете открыть адрес phpPgAdmin в браузере. Только обратите внимание на регистр букв, его нужно сохранять как при установке пакета, так и в браузере:
Выводы
В этой статье мы рассмотрели как выполняется установка Postgresql CentOS 7. Как видите, здесь нет ничего очень сложного. Postgresql имеет некоторые особенности, например, авторизация пользователя в системе для управления базой данных. Если у вас остались вопросы, спрашивайте в комментариях!
На завершение видео о про преимущества Postgresql:
Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали











Доброго времени суток. У Вас есть ошибочки.
Вы часто путали 9.5 - 9.6 при написании версий и команд.
Если ставим 9.6 то и команды с 9.6...
Неплохо добавить бы что можно сделать upgrade до версии 9.6 достаточно травиально.
добавить репу https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
включить в /etc/yum.repos.d/CentOS-Base.repo строчку exclude=postgresql* в секцию [base] и [updates]
Ну и далее как обычно... update - upgrade итд
Да забыл добавить что после установки Вы вряд ли зайдете в БД без настройки двух строчек минимум. Будет ругаться на неправильный пароль... попробуйте а потом поправьте
в pg_hba.conf
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
вместо ident нужно md5