Postgresql установка linux: Установка PostgreSQL в Ubuntu 20.04, настройка и инструкция по работе с аккаунтом

Содержание

Установка и настройка PostgreSQL 10 на Linux

Установка и настройка PostgreSQL 10 на Linux


Так как PostgreSQL 10 – это новая версия данной системы управления базами данных, то начать предлагаю с краткого рассмотрения новых возможностей 10 версии.


Примечание! 10 версия PostgreSQL была актуальна на момент написания статьи, на текущий момент доступны новые версии.


Что нового в PostgreSQL 10?


Начиная с PostgreSQL 10, меняется схема нумерации версий, это вызвано тем, что раньше выходило множество минорных версий (например, 9.x), многие из которых на самом деле вносили значительные изменения не соответствующие минорным, теперь мажорные версии будут нумероваться 10, 11, 12, а минорные 10.1, 10.2, 11.1 и так далее.


Основные нововведения:


·         Логическая репликация с использованием публикации и подписки — теперь возможно осуществлять репликацию отдельных таблиц на другие базы, это реализовывается с помощью команд CREATE PUBLICATION и CREATE SUBSCRIPTION;


·         Декларативное партиционирование таблиц – в PostgreSQL 10 добавился специальный синтаксис для партиционирования, который позволяет легко создавать и поддерживать таблицы с интервальной или списочной схемой партиционирования;


·         Улучшенный параллелизм запросов – другими словами, появилась дополнительная оптимизация запроса, для того чтобы пользователь получал данные быстрей;


·         Аутентификация пароля на основе SCRAM-SHA-256 – добавился новый метод аутентификации, который является более безопасным, чем метод с использованием MD5;


·         Quorum Commit для синхронной репликации – теперь администратор может указать что, если какое-либо количество реплик подтвердило, что внесено изменение в базу данных, данное изменение можно считать надёжно зафиксированным;


·         Значительные общие улучшения производительности;


·         Улучшенный мониторинг и контроль.


.


Установка PostgreSQL 10 на Linux Ubuntu Server 16.04


Как Вы уже, наверное, поняли рассматривать процесс установки и соответственно настройки PostgreSQL 10 мы будем на примере версии Ubuntu Server 16.04, так как эта версия имеет долгосрочную поддержку и на текущий момент является актуальной среди LTS версий.


Шаг 1


Установку и настройку PostgreSQL необходимо осуществлять с правами суперпользователя, поэтому давайте сразу переключимся на пользователя root. Для этого вводим sudo -i (или sudo su) и жмем Enter.


Шаг 2


Затем первое, что нам нужно сделать, это проверить есть ли в репозиториях версия PostgreSQL 10. Это можно сделать путем ввода следующей команды.  


   apt-cache search postgresql-10


Как видим, в Ubuntu Server 16.04 10 версии PostgreSQL нет, поэтому нам нужно подключить необходимый репозиторий, в котором присутствует PostgreSQL 10. Если у Вас более новая версия Ubuntu Server и в стандартных репозиториях есть 10 версия PostgreSQL, то дополнительный репозиторий Вам подключать не нужно, т.е. данный шаг Вы пропускаете.


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


После перехода на страницу выбираете версию Ubuntu, после чего у Вас отобразится адрес нужного репозитория.


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


     sh -c ‘echo «deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main» >> /etc/apt/sources.list.d/pgdg.list’


 


Также нам необходимо импортировать ключ подписи репозитория, для этого вводим команду.


   wget —quiet -O — https://www.postgresql. org/media/keys/ACCC4CF8.asc | \apt-key add -


Далее обновляем список пакетов.


  


   apt-get update


И еще раз проверяем наличие пакета с PostgreSQL 10.


     apt-cache search postgresql-10


 Теперь нужный пакет у нас есть, и мы можем переходить к установке PostgreSQL 10.


Шаг 3


Для установки PostgreSQL 10 пишем следующую команду.


   


   apt-get -y install postgresql-10


 


По окончанию процесса установки проверяем, запущен ли сервер PostgreSQL.


 


   systemctl status postgresql


 Как видим, PostgreSQL 10 установился и работает.


Базовая настройка PostgreSQL 10 в Linux Ubuntu Server


После установки нам необходимо выполнить базовую настройку PostgreSQL 10, например: создать пользователя, указать какие сетевые интерфейсы будет прослушивать сервер, а также разрешить подключение по сети. Начнем мы с создания пользователя и базы данных.


Создание пользователя и базы данных в PostgreSQL


После установки, к серверу PostgreSQL мы можем подключиться только с помощью системного пользователя postgres, причем без пароля. Для этого переключаемся на пользователя postgres (учетная запись в Ubuntu создана автоматически во время установки PostgreSQL).


     su — postgres


 Запускаем psql — это консоль управления PostgreSQL.  


   psql 


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


  


   \password postgres


Затем создаем нового пользователя на сервере PostgreSQL, так как работать от имени postgres крайне не рекомендуется.  


    create user testuser with password ‘123456’; 


где, testuser – это имя пользователя, ‘123456’ – это его пароль.


Далее давайте создадим базу данных.    


   create database testdb;


где, testdb – это имя новой базы данных.


Теперь давайте дадим права на управление БД нашему новому пользователю.


  


   grant all privileges on database testdb to testuser;


Все готово, выходим из консоли.  


 \q 


Для проверки, давайте подключимся к PostgreSQL от имени нового пользователя, на предложение о вводе пароля вводим пароль от новой учетной записи.


     psql -h localhost testdb testuser


Работает. Для выхода снова набираем \q.  


   \q


Для переключения обратно на root вводим exit.


     exit


 Разрешаем подключение к PostgreSQL по сети


По умолчанию PostgreSQL прослушивает только адрес localhost, поэтому для того чтобы мы могли подключаться по сети, нам нужно указать какие сетевые интерфейсы будет просушивать PostgreSQL. Я для примера укажу, что прослушивать нужно все доступные интерфейсы. Если у Вас несколько сетевых интерфейсов, и Вы хотите, чтобы PostgreSQL использовал только один конкретный, то Вы его можете указать именно здесь.


Для этого открываем файл postgresql.conf, например редактором nano.  


   nano /etc/postgresql/10/main/postgresql.conf


Находим следующую строку.  


   #listen_addresses = ‘localhost’ 


и заменяем на (вместо звездочки Вы в случае необходимости указываете IP адрес нужного интерфейса).  


   listen_addresses = ‘*’


Сохраняем изменения сочетанием клавиш CTRL+O и подтверждаем нажатием Enter, затем просто закрываем редактор nano сочетанием клавиш CTRL+X.


Теперь давайте разрешим подключение из сети 10.0.2.0/24 с методом аутентификации md5. Для этого открываем файл pg_hba.conf


  


   nano /etc/postgresql/10/main/pg_hba. conf 


И вносим следующие изменения (если IPv6 Вы не будете использовать, то можете закомментировать соответствующие строки знаком #).


Где, 10.0.2.0/24 адрес сети, из которой будет происходить подключение к текущему серверу PostgreSQL. Сохраняем изменения сочетанием клавиш CTRL+O, подтверждаем нажатием Enter и закрываем редактор nano сочетанием клавиш CTRL+X.


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


   systemctl restart postgresql 


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

Postgres Pro Standard : Документация: 10: 16.1. Установка Postgres Pro Standard в Linux : Компания Postgres Professional

RU

EN

RU EN

16.1.1. Поддерживаемые дистрибутивы Linux

16.1.2. Быстрая установка и настройка

16.1.3. Расширенная установка

16.1.4. Установка на рабочих станциях разработчиков

16. 1.5. Настройка нескольких экземпляров Postgres Pro

16.1.6. Замечания о совместимости с антивирусами

Для систем на базе Linux Postgres Pro Standard поставляется в виде двоичных пакетов. Все двоичные дистрибутивы Postgres Pro состоят из нескольких пакетов. Структура пакетов отличается от структуры ванильного PostgreSQL и поддерживает следующие режимы установки:

  • Быстрая установка и настройка. Пакет postgrespro-std-10 устанавливает и настраивает все компоненты, необходимые для получения готовой к использованию конфигурации, как клиентских, так и серверных компонентов. Выберите этот вариант, если вы планируете установить только один экземпляр Postgres Pro и вас не беспокоят возможные конфликты с другими продуктами на базе PostgreSQL.

    Важно

    При установке пакета postgrespro-std-10 могут быть удалены существующие инсталляции продуктов на базе Postgres Pro и PostgreSQL. И напротив, установленный пакет Postgres Pro может быть автоматически удалён, если вы впоследствии развернёте другой продукт на базе PostgreSQL. Данный пакет не нужно устанавливать в процессе обновления или миграции, а также если вы планируете разворачивать в одной системе несколько инсталляций.

  • Расширенная установка. Вы можете выбрать любые пакеты, требующиеся для ваших целей, включая пакеты для разработчиков. Этот вариант требует ручной настройки, поэтому для него необходимо хорошо разбираться в Linux и понимать архитектуру PostgreSQL. Это единственно возможный вариант, если вы планируете реализовать один из следующих сценариев использования Postgres Pro:

    • Установка одновременно нескольких версий Postgres Pro либо установка вместе с другими продуктами на базе PostgreSQL.

    • Обновление с другой версии или миграция с другого продукта на базе PostgreSQL.

    • Управление сервером Postgres Pro с использованием программных средств обеспечения высокой степени доступности, таких как pacemaker, вместо стандартных системных механизмов управления службами.

Минимальные системные требования для установки Postgres Pro, создания кластера баз данных и запуска сервера:

Для вспомогательных компонентов или данных потребуется дополнительное дисковое пространство.

16.1.1. Поддерживаемые дистрибутивы Linux

Двоичные пакеты Postgres Pro предоставляются для следующих систем на базе Linux:

  • Системы Red Hat Enterprise Linux (RHEL) и производные от них: CentOS 7/8, Red Hat Enterprise Linux 7/8, Oracle Linux 7/8, Rosa Enterprise Linux Server 7, РОСА «КОБАЛЬТ» (серверная редакция) на платформе РОСА 7, РЕД ОС МУРОМ 7.2, AlterOS 7.5

  • Системы на базе Debian: Debian 9/10, Ubuntu 18.04/20.04, Astra Linux «Смоленск» 1.6/1.7, Astra Linux «Орёл» 2.12

  • Альт 8/9/10, Альт Линукс СПТ 7.0, Альт 8 СП, Альт 8.2 СП

  • SUSE Linux Enterprise Server (SLES) 12/15

Примечание

Двоичные пакеты Postgres Pro используют библиотеку tzdata, предоставляемую операционной системой, поэтому важно, чтобы в системе была установлена последняя её версия. В случае использования устаревшей библиотеки tzdata значения времени в вашей базе данных могут быть некорректными.

16.1.2. Быстрая установка и настройка

Если вам нужно установить только один экземпляр Postgres Pro и вы не собираетесь использовать никакие другие продукты на базе PostgreSQL в вашей системе, вы можете использовать режим быстрой установки. Типичная процедура установки в этом случае выглядит так:

  1. Подключите репозиторий пакетов, предназначенный для вашей операционной системы. Конкретные адреса репозиториев и команды для их подключения в поддерживаемых дистрибутивах Linux вы можете найти на Странице загрузки для соответствующей версии Postgres Pro.

  2. Установите пакет postgrespro-std-10. При этом по зависимостям установятся все требуемые компоненты, будет создана база данных по умолчанию, запущен сервер баз данных и настроен автозапуск сервера при загрузке системы, а все предоставляемые программы станут доступными в пути PATH.

Примечание

По умолчанию конфигурация базы данных настраивается под устанавливаемый продукт Postgres Pro. Если вам нужна другая настройка сервера базы данных, выберите расширенную установку и воспользуйтесь аргументом tune команды pg-setup initdb.

После завершения установки вы можете запустить psql от имени пользователя postgres и подключиться к только что созданной базе данных, находящейся в каталоге данных /var/lib/pgpro/std-10/data.

Так как база данных по умолчанию создаётся скриптом pg-setup, путь к каталогу данных сохраняется в файле /etc/default/postgrespro-std-10. Все последующие команды pg-setup, а также любые команды, управляющие службой Postgres Pro, будут нацелены именно на эту базу данных. Кроме того, в указанном файле можно изменить значение PG_OOM_ADJUST_VALUE для дочерних процессов postmaster (за подробностями обратитесь к Подразделу 17.4.4).

16.1.3. Расширенная установка

Разделение дистрибутива на несколько пакетов позволяет произвести инсталляцию по-разному для различных применений: для серверов баз данных, клиентских систем или рабочих станций разработчиков. Такие инсталляции необходимо настраивать вручную, но это даёт дополнительную гибкость при использовании продукта. Вы можете установить несколько версий Postgres Pro параллельно, а также вместе с другими продуктами PostgreSQL. В частности, это может потребоваться при осуществлении обновления или при миграции с другого продукта на базе PostgreSQL.

Для осуществления расширенной установки выполните следующие действия:

  1. Подключите репозиторий пакетов, предназначенный для вашей операционной системы. Конкретные адреса репозиториев и команды для их подключения в поддерживаемых дистрибутивах Linux вы можете найти на Странице загрузки для соответствующей версии Postgres Pro.

  2. Выберите пакеты Postgres Pro, требующиеся для ваших целей, и установите их с помощью стандартных для вашего дистрибутива Linux команд. Доступные пакеты перечислены в Таблице 16.1.

    В результате все файлы будут установлены в каталог /opt/pgpro/std-10.

  3. Запустите от имени root утилиту pg-wrapper, чтобы добавить и клиентские, и серверные установленные программы в путь поиска PATH, а также включить страницы man по SQL в файл конфигурации страниц man. Эта утилита входит в состав пакета postgrespro-std-10-client.

    /opt/pgpro/std-10/bin/pg-wrapper links update

    Подробнее о разрешении возможных конфликтов рассказывается в pg-wrapper.

  4. Если вы устанавливаете пакет postgrespro-std-10-server, выполните следующую процедуру настройки сервера:

    1. Создайте начальную базу данных, запустив вспомогательный скрипт pg-setup от имени root с ключом initdb:

      /opt/pgpro/std-10/bin/pg-setup initdb [--tune=конфигурация] [параметры_initdb]

      Здесь:

      Примечание

      По умолчанию pg-setup инициализирует кластер баз данных со включёнными контрольными суммами. Если для вас это нежелательно, укажите --no-data-checksums.

      Скрипт pg-setup выполняет административные операции с базами данных от имени пользователя postgres. Если вы не укажете никакие параметры initdb, база по умолчанию создаётся в каталоге /var/lib/pgpro/std-10/data с параметрами локализации, определяемыми переменной окружения LANG текущего сеанса. Переменные окружения LC_* при этом игнорируются.

      Так как база данных по умолчанию создаётся скриптом pg-setup, путь к каталогу данных сохраняется в файле /etc/default/postgrespro-std-10. Все последующие команды pg-setup, а также любые команды, управляющие службой Postgres Pro, будут нацелены именно на эту базу данных. Кроме того, в указанном файле можно изменить значение PG_OOM_ADJUST_VALUE для дочерних процессов postmaster (за подробностями обратитесь к Подразделу 17.4.4).

    2. Запустите сервер с помощью pg-setup от имени root следующим образом:

      /opt/pgpro/std-10/bin/pg-setup service start

      Как и сервер ванильного PostgreSQL, сервер Postgres Pro работает под именем пользователя postgres.

      Примечание

      По умолчанию автоматический запуск сервера отключён, чтобы вы могли вручную управлять восстановлением базы данных после перезагрузки системы. Однако вы можете настроить и автоматический запуск сервера Postgres Pro. За подробностями обратитесь к Подразделу 16. 1.3.2.

16.1.3.1. Выбор устанавливаемых пакетов

В следующей таблице перечислены все имеющиеся пакеты Postgres Pro.

Таблица 16.1. Пакеты Postgres Pro

Пакет

Описание

postgrespro-std-10

Пакет верхнего уровня, устанавливающий и настраивающий Postgres Pro для серверных и клиентских систем. Не используйте этот пакет при обновлении или миграции.

Важно

При установке пакета postgrespro-std-10 могут быть удалены существующие инсталляции продуктов на базе Postgres Pro и PostgreSQL. И напротив, установленный пакет Postgres Pro может быть автоматически удалён, если вы впоследствии развернёте другой продукт на базе PostgreSQL.

postgrespro-std-10-client

Стандартные клиентские приложения, такие как psql и pg_dump.

postgrespro-std-10-libs

Общие библиотеки, требующиеся для развёртывания клиентских приложений, включая libpq; библиотеки времени выполнения для обработчика ECPG.

postgrespro-std-10-server

Сервер Postgres Pro и серверный язык программирования PL/pgSQL.

postgrespro-std-10-contrib

Дополнительные расширения и программы, разворачиваемые на серверах баз данных.

pg-probackup-std-10

Утилита pg_probackup.

postgrespro-std-10-pgprobackup

Пакет pg_probackup для автоматического обновления с Postgres Pro Standard версии ниже 10.7.1.

postgrespro-std-10-devel

Заголовочные файлы и библиотеки для разработки клиентских приложений и серверных расширений.

В системах на базе Debian этот пакет называется postgrespro-std-10-dev.

postgrespro-std-10-plperl

Реализация языка Perl для программирования на стороне сервера.

postgrespro-std-10-plpython

Реализация языка Python для программирования на стороне сервера.

postgrespro-std-10-plpython3

Реализация языка Python 3 для программирования на стороне сервера.

postgrespro-std-10-pltcl

Реализация языка Tcl для программирования на стороне сервера.

postgrespro-std-10-docs

Документация на английском языке.

postgrespro-std-10-docs-ru

Документация на русском языке.

postgrespro-std-10-test

Тестовые скрипты для сервера.

Этот пакет представлен только для систем на базе RHEL и SUSE.

pgpro-controldata

Утилита pgpro_controldata, показывающая управляющую информацию кластера БД PostgreSQL/Postgres Pro и параметры совместимости кластера и/или сервера.

Кроме этого, имеются отдельные пакеты с несколькими дополнительными модулями, собранные специально для совместимости с Postgres Pro:

Кроме того, Postgres Pro предоставляет отдельные пакеты с отладочной информацией для некоторых операционных систем:

  • В системах на базе Debian это пакет postgrespro-std-10-dbg.

  • В системах на базе RHEL это пакет postgrespro-std-10-debuginfo.

  • В ОС Альт Линукс для всех пакетов с двоичными файлами имеются соответствующие пакеты -debuginfo.

Для серверных инсталляций требуются как минимум следующие пакеты:

  • postgrespro-std-10-server

  • postgrespro-std-10-client

  • postgrespro-std-10-libs

Для использования дополнительных расширений Postgres Pro вы должны также установить пакет postgrespro-std-10-contrib. В системах на базе Debian пакет postgrespro-std-10-server зависит от пакета postgrespro-std-10-contrib, поэтому последний должен всегда устанавливаться вместе с сервером.

Для клиентских инсталляций обычно достаточно установить пакеты postgrespro-std-10-client и postgrespro-std-10-libs. Если вы используете независимые приложения и вам не нужны стандартные клиентские утилиты, такие как psql, вы можете установить только пакет postgrespro-std-10-libs.

Для рабочих станций разработчиков необходимый минимум составляют следующие пакеты:

Также вы можете установить и настроить сервер с тестовой базой данных. Подробнее о настройке, которая может потребоваться дополнительно, рассказывается в Подразделе 16.1.4.

16.1.3.2. Настройка автоматического запуска сервера

Если вы производите расширенную установку, автоматический запуск сервера по умолчанию отключается. После создания базы данных по умолчанию вы можете настроить автоматический запуск сервера при загрузке системы, используя имеющиеся в вашей операционной системе механизмы управления службами или сторонние средства обеспечения высокой степени доступности. Для облегчения этой задачи в пакете postgrespro-std-10-server поставляется скрипт pg-setup, помещаемый в каталог /opt/pgpro/std-10/bin.

Для настройки автозапуска сервера запустите скрипт pg-setup со следующими параметрами:

pg-setup service enable

Если требуется, вы можете отключить автозапуск сервера, используя тот же скрипт:

pg-setup service disable

Вы также можете использовать системные средства управления службами, непосредственно задействуя скрипты для систем инициализации SysV init.d и systemd, предоставляемые в пакете postgrespro-std-10-server. В зависимости от дистрибутива Linux Postgres Pro поддерживает следующие механизмы управления службами:

Для включения автоматического запуска сервера средствами systemd выполните следующую команду:

systemctl enable postgrespro-std-10

Для использования скрипта init.d в стиле SysV:

  • В системах Альт Линукс выполните следующую команду:

    systemctl enable postgrespro-std-10
  • В системах Debian воспользуйтесь скриптом update-rc. d. За подробностями обратитесь к соответствующей странице man.

16.1.4. Установка на рабочих станциях разработчиков

Хотя может быть достаточно установить пакеты postgrespro-std-10-libs и postgrespro-std-10-devel/postgrespro-std-10-dev, обычно на машинах разработчиков удобно иметь и установленный сервер. Для быстрой установки вы можете воспользоваться пакетом postgrespro-std-10, который автоматически настроит предоставляемые клиентские и серверные программы, а также создаст начальную базу данных. Однако если вы планируете использовать одновременно несколько продуктов на базе PostgreSQL, следуйте инструкциям по расширенной установке, приведённым в Подразделе 16.1.3.

Чтобы скомпилировать программы с библиотеками Postgres Pro, используя утилиту pg_config, поставляемую с Postgres Pro, необходимо, чтобы её путь был указан в переменной PATH до путей каких-либо других версий pg_config. Заметьте, что в системах на базе RHEL pg_config не добавляется в PATH автоматически. Если в вашей системе нет других версий pg_config, вы можете воспользоваться утилитой pg-wrapper, поставляемой в пакете postgrespro-std-10-client, для создания символической ссылки на pg_config в стандартном каталоге исполняемых файлов.

Для компиляции программ с использованием pkg-config добавьте путь /opt/pgpro/std-10/lib/pkgconfig/ в переменную среды PKG_CONFIG_PATH.

16.1.4.1. Использование сторонних программ с Postgres Pro

Чтобы использовать сервер Postgres Pro с клиентской программой из стороннего продукта, вы можете установить версию библиотек PostgreSQL, с которыми компилировалась эта программа. Например, если программа поставляется в составе ванильного PostgreSQL, вам может потребоваться установить пакеты libpq или postgresql-libs, предоставляемые для вашего дистрибутива Linux. В этом случае программа, возможно, не будет использовать некоторые новые возможности сервера Postgres Pro, но скорее всего она и не поддерживает их.

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

Важно

Если программа скомпилирована с одной версией libpq, а используется с другой, её стабильная работа не гарантируется.

Если вы создаёте пакеты .rpm или .deb для вашей программы, рекомендуется сделать следующее:

  1. Добавьте путь /opt/pgpro/std-10/bin в переменную PATH в сборочных скриптах (в файле .spec или debian/rules).

  2. Добавьте postgrespro-std-10-dev в теги BuildDepends или BuildRequires описания пакета вашей программы.

Тем самым вы обеспечите вызов в процессе создания пакетов нужной версии pg_config при каждой пересборке пакета исходного кода.

16.1.5. Настройка нескольких экземпляров Postgres Pro

Чтобы настроить в Linux несколько экземпляров сервера Postgres Pro с разными каталогами данных, нужно проделать следующее:

  1. Установите и настройте Postgres Pro, следуя указаниям в Подразделе 16.1.2 или Подразделе 16.1.3.

  2. После создания начальной базы данных запустите initdb и укажите путь к другому каталогу данных и любые другие параметры, требующиеся для инициализации другого экземпляра сервера.

  3. Задайте другие порты для экземпляров серверов в соответствующих файлах postgresql.conf, чтобы не допустить конфликтов.

  4. Если требуется, настройте автоматический запуск сервера следующим образом:

    1. Создайте копию файла /etc/init.d/postgrespro-std-10 или /lib/systemd/system/postgrespro-std-10.service с другим именем и поменяйте в ней путь к каталогу данных.

    2. Включите автоматический запуск сервера, используя скрипты автозапуска, предоставленные для вашего системного механизма управления службами, вместо pg-setup, как описано в Подразделе 16. 1.3.2. Убедитесь в том, что вы используете переименованные копии скриптов, созданные на шаге 1.

16.1.6. Замечания о совместимости с антивирусами

Настоятельно не рекомендуется использовать антивирусное ПО в системах, где работает Postgres Pro, так как антивирус создаёт дополнительную нагрузку и может оказывать непредсказуемое влияние на работу базы данных, что чревато проблемами с производительностью и надёжностью. Если вам необходимо использовать антивирусное ПО, обязательно добавьте в исключения антивируса следующие каталоги, так как они не содержат исполняемых файлов:

  • Каталог PGDATA с основными данными кластера (обычно /var/lib/pgpro/std-10/data или другой каталог, заданный в параметрах initdb)

  • Каталоги созданных табличных пространств

загрузок Linux (семейство Red Hat)

В семейство дистрибутивов Red Hat входят:

  • Red Hat Enterprise Linux
  • Рокки Линукс
  • CentOS (только 7 и 6)
  • Федора
  • Оракл Линукс

и другие.

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

Репозиторий PostgreSQL Yum

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

В настоящее время репозиторий PostgreSQL Yum поддерживает:

  • Red Hat Enterprise Linux
  • Рокки Линукс
  • CentOS (только 7 и 6)
  • Оракл Линукс
  • Федора *

* Примечание : из-за более короткого цикла поддержки
в Fedora не все поддерживаемые версии PostgreSQL доступны на этой платформе. Мы не рекомендуем
использование Fedora для серверных развертываний.

Чтобы использовать репозиторий PostgreSQL Yum, выполните следующие действия:

  1. Выберите версию:
  2. Выберите платформу:
  3. Выберите архитектуру:
  4. Скопируйте, вставьте и запустите соответствующие части сценария установки:

Входит в комплект поставки

Все эти дистрибутивы включают PostgreSQL по умолчанию. Установить
PostgreSQL из этих репозиториев, используйте команду yum на RHEL 6 и 7:


yum установить postgresql-сервер

или команду dnf в RHEL 8 и Fedora:


dnf установить postgresql-сервер

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

Распределение Версия
RHEL/Rocky Linux 9 13
RHEL/Rocky Linux/OL 8 13, 12, 10 и 9. 6 через модули
RHEL / CentOS / SL / OL 7 9.2 (также поставляет пакеты rh-postgresql10, rh-postgresql96, rh-postgresql95 и rh-postgresql94 через SCL)
RHEL / CentOS / SL / OL 6 8.4 (также поставляется пакет rh-postgresql96 через SCL)
Федора 36 14
Федора 35 13

Другие дистрибутивы семейства Red Hat могут содержать другую версию
PostgreSQL по умолчанию, уточните у поставщика вашего дистрибутива.

Репозиторий содержит множество различных пакетов, включая сторонние
аддоны. Наиболее распространенными и важными пакетами являются (замените
номер версии по желанию):

postgresql-клиент библиотеки и двоичные файлы клиента
postgresql-сервер главный сервер базы данных
вклад postgresql дополнительные поставляемые модули
postgresql-devel библиотеки и заголовочные файлы для разработки на языке C

После установки

Из-за политик для дистрибутивов семейства Red Hat установка PostgreSQL
не будет включен автоматический запуск или инициализирована база данных
автоматически. Чтобы завершить установку базы данных, вам необходимо
выполните следующие шаги в зависимости от вашего дистрибутива:

Для RHEL / Rocky Linux / CentOS / SL / OL 7, 8, 9 или Fedora 35 и более поздних производных дистрибутивов:
  postgresql-настройка --initdb
  systemctl включить postgresql.service
  systemctl запустить postgresql.service
 
Для RHEL/CentOS/SL/OL 6
  служба postgresql initdb
  chkconfig postgresql включен
 

Прямая загрузка RPM

Если вы не можете или не хотите использовать метод установки на основе yum,
все RPM в репозитории yum доступны для
прямая загрузка
а также ручная установка.

Как установить и подключиться к PostgreSQL в Ubuntu 18.04

Введение

PostgreSQL — это система объектно-реляционных баз данных с открытым исходным кодом, имеющая прочную репутацию за надежность функций, расширяемость и соответствие техническим стандартам.

Последней версией этой системы баз данных является PostgreSQL 12. 1 , а версии 11.6, 10.11, 9.6.16, 9.5.20 и 9.4.25 по-прежнему получают регулярные обновления поддержки.

В этом руководстве вы узнаете о двух разных способах установки новейшей версии PostgreSQL в Ubuntu 18.04.

Prerequisites

  • An Ubuntu 18.04 Linux system
  • Access to a command-line/terminal window ( Ctrl + Alt + T )
  • A user account with  sudo  privileges

Install PostgreSQL из репозитория PostgreSQL Apt

PostgreSQL доступен во всех версиях Ubuntu по умолчанию, но не гарантирует автоматического обновления при выходе новых выпусков. В локальном репозитории есть только «моментальные снимки» конкретной версии. Лучше всего устанавливать программное обеспечение с версии 9.0041 Apt-репозиторий PostgreSQL .

Репозиторий PostgreSQL Apt содержит последнюю версию PostgreSQL, а также все предыдущие серверные пакеты, расширения и модули.

Шаг 1. Добавьте репозиторий PostgreSQL

Для установки из официального репозитория сначала необходимо добавить его в систему.

Импортируйте ключ репозитория GPG с помощью команд:

 sudo apt-get install wget ca-certificates 
 wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-ключ добавить - 

Затем добавьте репозиторий PostgreSQL, введя:

 sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/ apt/sources.list.d/pgdg.list'
 

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

После добавления официального репозитория PostgreSQL обязательно обновите список пакетов. Это гарантирует, что вы установите последний пакет PostgreSQL.

 sudo apt-get update 

Шаг 3. Установите PostgreSQL

Для установки PostgreSQL и пакет PostgreSQL contrib (который предоставляет дополнительные функции), используйте следующую команду:

 sudo apt-get install postgresql postgresql-contrib 

система базы данных. Эта учетная запись пользователя имеет роль «postgres» по умолчанию.

Установка PostgreSQL из локального репозитория Ubuntu

Если вы предпочитаете устанавливать PostgreSQL из локального репозитория Ubuntu, имейте в виду, что это, скорее всего, не последняя версия пакета.

Шаг 1. Проверьте доступную версию PostgreSQL

Прежде чем решить, хотите ли вы установить PostgreSQL из репозитория Ubuntu, проверьте, какие версии доступны. Обновите репозиторий, а затем выполните команду:

 apt show postgresql 

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

Шаг 2. Установите пакет PostgreSQL

Если вас устраивает версия PostgreSQL, доступная из локального репозитория, используйте следующую команду для установки пакета:

 sudo apt install postgresql postgresql-contrib 

С помощью этих простых шагов вы успешно установили PostgreSQL на Ubuntu 18.04.

Подключение к PostgreSQL

Чтобы установить соединение с вновь настроенной базой данных, войдите в учетную запись postgres с помощью:

 sudo su - postgres 

Теперь откройте приглашение postgress с помощью команды:

 psql 

Если вы подключены к PostgreSQL и хотите просмотреть подробности подключения, используйте команду:

 \conninfo 

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