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.