Postgresql centos 7: Установка и настройка PostgreSQL в CentOS

Установка Postgresql на CentOS 7

Для работы Jira Service Desk требуется БД. По документации на сайте Atlassian в качестве БД можно использовать MySQL, Postgresql.

Мы будем устанавливать Postgresql. После снятия снэпшота и включении сервера, переподключаемся к нашему серверу и установим репозитарий для postgresql следующей командой. На момент написания статьи, возможно вышла новая версия postgresql. Если Вы хотите установить все самое последнее, то на сайте копируйте ссылку на дистрибутив и вставляете в команду вместо текущей ссылки.

yum -y install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

дожидаемся установки и после чего ставим сам Postgresql Server командой

yum -y install postgresql96-server

переходим в корень системы, иначе не сможем запустить службу

cd /

заходим под пользователем postgres

su - postgres

инициализируем базу командой, если мы не хотим, чтобы были проблемы с кириллицей, то указываем кодировку

/usr/pgsql-9. 6/bin/initdb --encoding UTF-8 --lc-collate='ru_RU.UTF-8' --lc-ctype='ru_RU.UTF-8' -D /var/lib/pgsql/9.6/data

Если мы все сделали правильно в конце будет сообщение

Success. You can now start the database server using:

выходим из под пользователя postgres командой

logout

или комбинацией клавиш Ctrl+D

Включаем службу postgresql server командой

systemctl enable postgresql-9.6

и запускам ее

systemctl start postgresql-9.6

Теперь настроим безопасность, т.е. доступ к базе по паролю. Снова входим под пользователем postgres

su - postgres

далее набираем

psql

и задаем пароль пользователю postgres командой

ALTER ROLE postgres WITH PASSWORD 'postgresPASSWORD';

выходим из-под пользователя postgres нажав 2 раза комбинацию клавиш Ctrl+D

отредактируем файл pg_hba. conf, применим шифрование md5. Открываем файл командой

vi /var/lib/pgsql/9.6/data/pg_hba.conf

переходим к разделу «local» is for unix domain socket connections only, переносим курсор в конец trust и переходим в режим редактирования нажав на клавишу A

заменяем trust на md5. Если необходимо подключиться к базе postgreSQL  с других адресов, к примеру посредством pgAdmin, то необходимо будет или отдельно прописывать хосты или разрешить любые подключения в строках # IPv4 local connection и # IPv6 local connection. После чего нажимаем ESC, тем самым выходим из режима редактирования и набираем :wq! для выхода их файла с сохранением. Должно быть как на скрине.

Отредактируем файл postgresql.conf для возможности прослушивать все соединения к БД. Открываем файл командой

vi /var/lib/pgsql/9.6/data/postgresql.conf

и переходим к разделу CONNECTIONS AND AUTHENTICATION, переносим курсов в конец localhost

Переходим в режим редактирования, раскомментируем строку, удалив знак # и заменяем localhost на звездочку. Выходим из режима редактирования и выходим из файла с сохранением.

перезапускаем службу, чтобы изменения вступили в силу командой

systemctl restart postgresql-9.6

И снова заходим под пользователем postgres для создания БД для сервиса JIRA

su - postgres

входим в базу командой

psql

после чего потребуется ввести пароль, который мы раннее указали для него командой ALTER ROLE postgres WITH PASSWORD ‘postgresPASSWORD’;

После чего создадим в базе нового пользователя

CREATE ROLE jiradbuser WITH PASSWORD 'jiradbuserPASSWORD' LOGIN;

Далее создадим новую базу и дадим полный доступ новому пользователю

CREATE DATABASE jiradb WITH OWNER jiradbuser;

И в конце смотрим список баз командой

\l

В итоге у нас должно быть что-то вроде

На этом установка postresql завершена. Перейдем к установке JIRA Service Desk

Установка PostgreSQL 9.6 на Centos 7 • centos, postgresql • IT Draft

Установка PostgreSQL

Добавляем репозиторий PostgreSQL и обновляемся

[root@localhost ~]# yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
[root@localhost ~]# yum update

Устанавливаем PostgreSQL 9.6

[root@localhost ~]# yum install postgresql96 postgresql96-server postgresql96-lib

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

[root@localhost ~]# /usr/pgsql-9.6/bin/postgresql96-setup initdb

Добавляем в автозагрузку PostgreSQL и запускаем его

[root@localhost ~]# systemctl enable postgresql-9.6
[root@localhost ~]# systemctl start postgresql-9.6

Настройка PostgreSQL

Открываем доступ к Postgresql, для этого редактируем в файле  postgresql.conf строку listen_addresses

[root@localhost ~]# nano /var/lib/pgsql/9. 6/data/postgresql.conf
listen_addresses = '*'

Разрешаем подключаться к PostgreSQL с заданных ip-адресов, для этого редактируем файл pg_hba.conf

[root@localhost ~]# nano /var/lib/pgsql/9.6/data/pg_hba.conf
host all all %ip%/32 md5

Перезапускаем PostgreSQL

[root@localhost ~]# systemctl restart postgresql-9.6

Открываем порт 5432 в firewall

[root@localhost ~]# firewall-cmd --permanent --zone=public --add-port=5432/tcp
success
[root@localhost ~]# firewall-cmd --reload
success

Ставим пароль на пользователя postgres

[root@localhost ~]# su - postgres
bash-4.2$ psql
psql (9.4.4)
Type "help" for help.
postgres=# \password
Enter new password: postgres
Enter it again: postgres
postgres=# \q
exit

Метки записи:
#centos#postgresql

Максим Макаров

У блога появился хостинг, его любезно предоставила компания Облакотека. Облакотека — облачные сервисы для создания и управления виртуальной ИТ-инфраструктурой.
Если вам понравился мой блог и вы хотели бы видеть на нем еще больше полезных статей, большая просьба поддержать этот ресурс.

Похожие записи

Как сделать GIMP более похожим на Photoshop

Нельзя отрицать, что Photoshop является золотым стандартом в области редактирования цифровых фотографий, и многие профессионалы отрасли ежедневно полагаются на него, чтобы зарабатывать на жизнь. Тем не менее, GIMP, его ближайший конкурент с открытым исходным кодом, в последние годы делает огромные шаги, чтобы сделать себя жизнеспособной альтернативой. Частью барьера, препятствующего фанатам Photoshop принять GIMP с открытым…

Читать далее Как сделать GIMP более похожим на PhotoshopПродолжить

Установка Grafana в Centos 8

Grafana — это многоплатформенное веб-приложение для аналитики и интерактивной визуализации с открытым исходным кодом. Он предоставляет диаграммы, графики и предупреждения для Интернета при подключении к поддерживаемым источникам данных, также доступна версия Grafana Enterprise с дополнительными возможностями. Установка Grafana из репозитория Добавляем репозиторий Grafana Устанавливаем Grafana Добавляем сервис в автозагрузку и запускаем его. Проверяем статус Открываем…

Читать далее Установка Grafana в Centos 8Продолжить

Настройка Nginx в качестве UDP-балансировщика

В терминологии компьютерных сетей балансировка нагрузки или выравнивание нагрузки — метод распределения заданий между несколькими сетевыми устройствами с целью оптимизации использования ресурсов, сокращения времени обслуживания запросов, горизонтального масштабирования кластера, а также обеспечения отказоустойчивости. В одной из прошлых статей было рассмотрено как устанавливать Web-сервер Nginx в Debian или Centos После установка, отключаем дефолтный конфиг Редактируем основной…

Читать далее Настройка Nginx в качестве UDP-балансировщикаПродолжить

Локальный APT (Debian / Ubuntu) репозиторий на Centos 7

Репозиторий — место, где хранятся и поддерживаются какие-либо данные. Чаще всего данные в репозитории хранятся в виде файлов, доступных для дальнейшего распространения по сети.Среди дистрибутивов Linux популярны репозитории с форматом метаданных YUM для дистрибутивов на базе RPM-пакетов, и репозитории с метаданными APT для дистрибутивов на основе DEB-пакетов. Добавляем репозиторий EPEL и устанавливаем софт Создаем каталог, где будет находиться репозиторий Запускаем синхронизацию и зеркалом…

Читать далее Локальный APT (Debian / Ubuntu) репозиторий на Centos 7Продолжить

Как установить базу данных PostgreSQL на RHEL/CentOS 7/8

by cyberithub

Содержание

Рекламные объявления

В этой статье я покажу вам, как установить базу данных PostgreSQL на RHEL/CentOS 7/8. PostgreSQL — это очень популярная бесплатная система управления реляционными базами данных с открытым исходным кодом, предназначенная для обработки различных рабочих нагрузок, начиная от одной машины и заканчивая хранилищами данных с множеством одновременно работающих пользователей. Это мощное, быстрое и надежное средство, которое в настоящее время используется администраторами баз данных, разработчиками и всеми людьми, работающими с базами данных за последние 25 лет. Это база данных по умолчанию в системах на базе MAC. Проверьте официальную документацию для получения дополнительной информации.

Возможности PostgreSQL

  • Надежная база данных для динамических веб-сайтов
  • Высокая надежность с возможностью аварийного восстановления
  • Настоятельно рекомендуется для программирования на стороне сервера
  • Полностью поддерживается такими языками программирования, как C++, Java, Python, Ruby, Perl и т. д.
  • Имеет пользовательские типы данных
  • Поддерживает наследование таблиц
  • Соответствует КИСЛОТЕ
  • Обладает функциями отказоустойчивости и высокой доступности
  • Он имеет многоверсионный контроль параллелизма (MVCC)
  • Поддерживает механизм блокировки

Как установить PostgreSQL DB на RHEL/CentOS 7/8

также прочитайте: Как установить Kubectl на Ubuntu 20. 04 LTS (Focal Fossa)

Степ. ) У вас должен быть работающий сервер RHEL/CentOS 7/8 .

б) У вас должен быть sudo или root доступ для запуска привилегированных команд.

c) В вашей системе должна быть доступна утилита yum или dnf .

d) Убедитесь, что PostgreSQL по умолчанию порт 5432 разрешен из брандмауэра, если он у вас есть.

 

Шаг 2. Обновите сервер

Прежде чем продолжить установку, давайте синхронизируем систему с последними доступными обновлениями с помощью команды yum update или dnf update , как показано ниже. Если какие-либо пакеты требуют обновления, это можно сделать с помощью команды yum upgrade или dnf upgrade.

Рекламные объявления

 [root@cyberithub ~]# yum update
Загруженные плагины: fastmirror, langpacks
Загрузка зеркальных скоростей из кэшированного хост-файла
* база: centos-hcm. viettelidc.com.vn
* epel: mirrors.bestthaihost.com
* дополнительные материалы: centos-hcm.viettelidc.com.vn
* обновления: centos-hcm.viettelidc.com.vn
Разрешение зависимостей
--> Запуск проверки транзакции
---> Пакет powershell.x86_64 0:7.2.1-1.rh будет обновлен
---> Пакет powershell.x86_64 0:7.2.2-1.rh будет обновлением
---> Пакет snap-confine.x86_64 0:2.54.3-1.el7 будет обновлен
---> Пакет snap-confine.x86_64 0:2.54.4-1.el7 будет обновлением
---> Пакет snapd.x86_64 0:2.54.3-1.el7 будет обновлен
---> Пакет snapd.x86_64 0:2.54.4-1.el7 будет обновлением
---> Пакет snapd-selinux.noarch 0:2.54.3-1.el7 будет обновлен
---> Пакет snapd-selinux.noarch 0:2.54.4-1.el7 будет обновлением
--> Завершенное разрешение зависимостей
...................................... 

 

Шаг 3. Установка базы данных PostgreSQL

Существует несколько способов установки сервера баз данных PostgreSQL в Linux. Здесь мы установим его из репозитория по умолчанию, используя команду yum install postgresql-server postgresql-contrib , как показано ниже.

 [root@cyberithub ~]# yum install postgresql-server postgresql-contrib
Загруженные плагины: fastmirror, langpacks
Загрузка зеркальных скоростей из кэшированного хост-файла
* база: centos-hcm.viettelidc.com.vn
* epel: mirrors.bestthaihost.com
* дополнительные материалы: centos-hcm.viettelidc.com.vn
* обновления: centos-hcm.viettelidc.com.vn
Разрешение зависимостей
--> Запуск проверки транзакции
---> Пакет postgresql-contrib.x86_64 0:9.2.24-7.el7_9 будет установлен
--> Зависимость обработки: postgresql-libs(x86-64) = 9.2.24-7.el7_9 для пакета: postgresql-contrib-9.2.24-7.el7_9.x86_64
--> Зависимость обработки: postgresql(x86-64) = 9.2.24-7.el7_9 для пакета: postgresql-contrib-9.2.24-7.el7_9.x86_64
--> Зависимость обработки: libpq.so.5()(64bit) для пакета: postgresql-contrib-9.2.24-7.el7_9.x86_64
--> Зависимость обработки: libossp-uuid.so.16()(64bit) для пакета: postgresql-contrib-9.2.24-7.el7_9.x86_64
---> Пакет postgresql-server.x86_64 0:9.2.24-7.el7_9 будет установлен
--> Запуск проверки транзакции
---> Пакет postgresql. x86_64 0:9.2.24-7.el7_9 будет установлен
---> Пакет postgresql-libs.x86_64 0:9.2.24-7.el7_9 будет установлен
---> Пакет uuid.x86_64 0:1.6.2-26.el7 будет установлен
--> Завершенное разрешение зависимостей
................................. 

 

Шаг 4. Проверка версии PostgreSQL

После успешной установки вы можете проверить текущую установленную версию с помощью команды postgres -V , как показано ниже.

 [root@cyberithub ~]# postgres -V
postgres (PostgreSQL) 9.2.24 

 

Шаг 5. Инициализация базы данных

Следующим шагом является инициализация базы данных с помощью команды postgresql-setup initdb , как показано ниже.

 [root@cyberithub ~]# postgresql-setup initdb
Инициализация базы данных... OK 

 

Шаг 6: Запустите службу БД

После инициализации базы данных нам нужно запустить службу с помощью команды systemctl start postgresql, как показано ниже. Вы также можете проверить статус службы с помощью команды systemctl status postgresql .

 [root@cyberithub ~]# systemctl запустить postgresql
[root@cyberithub ~]# статус systemctl postgresql
● postgresql.service — сервер базы данных PostgreSQL.
Загружено: загружено (/usr/lib/systemd/system/postgresql.service; отключено; настройка поставщика: отключена)
Активен: активен (работает) со среды 23 марта 2022 г., 08:34:33 по восточному поясному времени; 1с назад
Процесс: 11584 ExecStart=/usr/bin/pg_ctl start -D ${PGDATA} -s -o -p ${PGPORT} -w -t 300 (код=выход, статус=0/УСПЕХ)
Процесс: 11574 ExecStartPre=/usr/bin/postgresql-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
Основной PID: 11587 (постгрес)
Заданий: 7
CGroup: /system.slice/postgresql.service
├─11587 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432
├─11588 postgres: процесс регистрации
├─11590 postgres: процесс контрольной точки
├─11591 postgres: процесс записи
├─11592 postgres: процесс записи wal
├─11593 postgres: процесс запуска автоочистки
└─11594 postgres: процесс сбора статистики

23 марта, 08:34:32 Cyberithub systemd[1]: Запуск сервера базы данных PostgreSQL. ..
23 марта, 08:34:33 Cyberithub systemd[1]: запущен сервер базы данных PostgreSQL. 

 

Шаг 7. Включение службы

Если вы хотите, чтобы эта служба запускалась автоматически после каждой перезагрузки системы, вам необходимо включить службу с помощью systemctl включает команду postgresql , как показано ниже.

 [root@cyberithub ~]# systemctl включить postgresql
Создана символическая ссылка из /etc/systemd/system/multi-user.target.wants/postgresql.service в /usr/lib/systemd/system/postgresql.service. 

 

Шаг 8. Открытие приглашения PSQL

Если вы вошли в систему как пользователь root, сначала вам нужно переключиться на обычного пользователя, поскольку приглашение psql не может быть открыто из учетной записи root. Здесь мы переключаемся на пользователя postgres по умолчанию, а затем запускаем приглашение, используя psql , как показано ниже.

 [root@cyberithub ~]# su - postgres
-bash-4. 2$ psql
psql (9.2.24)
Введите "помощь" для помощи.

postgres=# 

 

Шаг 9. Контрольный список баз данных

Теперь вы можете использовать приглашение psql для выполнения запросов PostgreSQL. Например, если вы хотите проверить список баз данных, вам нужно использовать метакоманду \l , как показано ниже.

 postgres=# \l
Список баз данных
Имя | Владелец | Кодирование | Разобрать | Тип | Права доступа
-----------+----------+-----------+-------------+-- --------------------------+-----------------------
постгрес | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
шаблон0 | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =с/постгрес +
| | | | | postgres=CTc/postgres
шаблон1 | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =с/постгрес +
| | | | | postgres=CTc/postgres
(3 ряда) 

 

Шаг 10. Проверьте информацию о подключении

Аналогичным образом, если вы хотите проверить информацию о подключении к базе данных, вам нужно использовать метакоманду \conninfo , как показано ниже. Это даст вам имя БД, пользователя, через которого вы подключены, и порт, на котором работает база данных. В нашем случае это по умолчанию Порт 5432 .

 postgres=# \conninfo
Вы подключены к базе данных "postgres" как пользователь "postgres" через сокет в "/var/run/postgresql" через порт "5432". 

 

Шаг 11. Создайте базу данных

Вы также можете создать образец базы данных и протестировать запросы PostgreSQL. В этом примере мы создаем базу данных с именем cyberithub , используя запрос create database cyberithub , как показано ниже. То же самое можно проверить, проверив список баз данных с помощью метакоманды \l .

 postgres=# создать базу данных cyberithub;
СОЗДАТЬ БАЗУ ДАННЫХ
postgres=# \l
Список баз данных
Имя | Владелец | Кодирование | Разобрать | Тип | Права доступа
------------+----------+-----------+-------------+- ---------------------------+-----------------------
киберитхаб | постгрес | UTF8 | en_US. UTF-8 | en_US.UTF-8 |
постгрес | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
шаблон0 | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =с/постгрес +
| | | | | postgres=CTc/postgres
шаблон1 | постгрес | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =с/постгрес +
| | | | | postgres=CTc/postgres
(4 ряда) 

 

Шаг 12. Выйдите из PSQL

Чтобы выйти из приглашения psql, вам нужно использовать метакоманду \q , как показано ниже.

 postgres-# \q
-bash-4.2$ 

 

Шаг 13. Удаление базы данных PostgreSQL

Наконец, когда вы закончите использовать базу данных PostgreSQL, вы также можете удалить ее из своей системы, используя yum remove postgresql-server postgresql-contrib команду, как показано ниже.

 [root@cyberithub ~]# yum удалить postgresql-server postgresql-contrib
Загруженные плагины: fastmirror, langpacks
Разрешение зависимостей
--> Запуск проверки транзакции
---> Пакет postgresql-contrib. x86_64 0:9.2.24-7.el7_9 будет стерт
---> Пакет postgresql-server.x86_64 0:9.2.24-7.el7_9 будет удален
--> Завершенное разрешение зависимостей

Зависимости разрешены

================================================== ================================================== ================================================== =======
Размер репозитория версии пакета Arch
================================================== ================================================== ================================================== =======
Удаление:
postgresql-вклад x86_64 9.2.24-7.el7_9 @обновления 1,8 млн.
postgresql-сервер x86_64 9.2.24-7.el7_9 @updates 16 M

Сводка транзакции
================================================== ================================================== ================================================== =======
Удалить 2 пакета

Установленный размер: 18 м
Это нормально [т/н]: д
............................. 

Как установить PostgreSQL на CentOS 7 / RHEL 7

PostgreSQL — это объектно-реляционная система управления базами данных (ORDBMS), доступная для многих платформ, включая Linux, FreeBSD, Solaris, Microsoft Windows и macOS.

Выпускается под лицензией PostgreSQL.

PostgreSQL разработан Глобальной группой разработчиков PostgreSQL, состоящей из нескольких добровольцев из сообщества, нанятых и контролируемых Red Hat и EnterpriseDB.

Подавляющее большинство дистрибутивов Linux содержат PostgreSQL в поставляемых пакетах.

Здесь мы увидим, как установить PostgreSQL на CentOS 7 / RHEL 7.

Настройка репозитория PostgreSQL

PostgreSQL публикует пакеты rpm для всех платформ Linux, и их пакеты более свежие, чем те, которые доступны в репозиториях ОС.

Итак, вам нужно добавить репозиторий на свой компьютер, установив rpm репозиторий PostgreSQL.

 yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm 

Установить PostgreSQL на CentOS 7/RHEL 7

На момент написания этого поста PostgreSQL v14,13,12,11 и 10 доступны для CentOS 7 / RHEL 7. Вы можете установить конкретную версию PostgreSQL, указав postgresql<версия>-сервер в ням команда.

Например, чтобы установить PostgreSQL 14, используйте приведенную ниже команду.

 yum install -y postgresql14-server 

Инициализировать сервер PostgreSQL

После установки PostgreSQL необходимо инициализировать его перед первым использованием. Измените приведенную ниже команду на основе версии PostgreSQL, например /usr/pgsql-<версия>/bin/postgresql-<версия>-setup initdb .

 /usr/pgsql-14/bin/postgresql-14-настройка initdb 

Данные PostgreSQL обычно находятся в каталоге /var/lib/pgsql/<версия>/data/.

Управление службой PostgreSQL

Чтобы запустить службу PostgreSQL, выполните:

 systemctl start postgresql-14 

Чтобы включить PostgreSQL при запуске системы, выполните:

 systemctl enable postgresql-14 

Чтобы проверить состояние работы службы PostgreSQL, .

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

 vi /var/lib/pgsql/14/data/postgresql. conf 

Установите listen_addresses на * .

 listen_addresses = '  *  ' 

Перезапустите службу PostgreSQL.

 перезапуск systemctl postgresql-14 

Подтвердите, что PostgreSQL прослушивает порт 5432, используя команду netstat .

 netstat -antup | группа 5432 

Вывод:

 tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 1969/postmaster
tcp6 0 0 :::5432 :::* ПРОСЛУШАТЬ 1969/почтмейстер
 

READ : команда netstat не найдена в CentOS 7 / RHEL 7 — Быстрое исправление

Доступ к серверу PostgreSQL

Чтобы создать базу данных, войдите в систему как postgres (пользователь Linux). Войдите в систему от пользователя root или сбросьте пароль пользователя postgres для входа в систему.

 # su -l postgres 

Доступ к базе данных с помощью команды psql . Это интерактивный интерфейсный терминал для базы данных PostgreSQL.