Разверните OpenClaw в облаке в один клик
Вход/ Регистрация

Установка PostgreSQL на Debian

18652
6 минут чтения
Средний рейтинг статьи: 5

PostgreSQL — система управления реляционными базами данных продвинутого уровня с открытым исходным кодом. Установить её на Debian 11 можно двумя способами: из репозитория операционной системы или из официального репозитория PostgreSQL.

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

База Данных Фото С Помощью Html, PHP И My SQL

Установка из репозитория Debian 11

На Debian установить PostgreSQL можно прямо из системного репозитория. 

Сначала обновите список пакетов. Запустите терминал и выполните:

    
sudo apt update && sudo apt upgrade

Пакет PostgreSQL находится в репозитории Debian, поэтому вы можете установить его с помощью утилиты apt. Для этого выполните:

    
sudo apt install postgresql postgresql-contrib

После завершения установки проверьте статус соответствующей службы с помощью команды:

    
sudo systemctl status postgresql

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

    
sudo systemctl start postgresql

Чтобы остановить работающую службу, выполните:

    
sudo systemctl stop postgresql

Прежде чем настраивать PostgreSQL на Debian, убедитесь в том, что служба запущена.

DBaaS

Запустите свою базу данных в облаке и
оптимизируйте процессы DevOps и CI/CD.

Установка из официального репозитория СУБД

Если вы хотите использовать только свежие версии Постгреса, рекомендуется использовать для установки и последующего обновления официальный репозиторий СУБД.

Прежде всего необходимо добавить ключ подписи GPG. Это требование безопасности, чтобы подтвердить подлинность репозитория PostgreSQL. Чтобы сделать это, запустите терминал и выполните:

    
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /usr/share/keyrings/postgresql-keyring.gpg

Теперь вы готовы добавить репозиторий Postgres. Используйте следующую команду:

    
echo "deb [signed-by=/usr/share/keyrings/postgresql-keyring.gpg] http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

После успешной интеграции библиотеки PostgreSQL вы готовы к установке СУБД. Но перед этим рекомендуется обновить репозиторий системы с помощью команды:

    
sudo apt update

После обновления выполните PostgreSQL install на Debian:

    
sudo apt install postgresql

Установка завершена. Теперь можно переходить к базовой настройке СУБД.

Базовая настройка

При установке СУБД автоматически создаётся пользователь postgres. Вы можете использовать эту учётную запись для первого подключения.

Переключитесь на пользователя postgres:

    
sudo su - postgres

Запустите утилиту psql — это оболочка для управления PostgreSQL:

    
psql

Теперь вы можете взаимодействовать с сервером PostgreSQL. Чтобы выйти из оболочки, введите:

    
\q

Вы можете использовать команду для доступа к командной строке Postgres без переключения пользователей:

    
sudo -u postgres psql

Однако пользователь postgres обычно используется только с локального хоста. Если, например, вы используете облачные базы данных, рекомендуется создать новую роль для подключения.

Создание роли и базы данных

Команда createuser позволяет создавать новые роли из командной строки. Только суперпользователи и роли с привилегиями CREATEROLE могут создавать новые роли.

В следующем примере создадим новую роль с именем timeweb и базу данных с именем timeweb_db, а затем предоставим новой роли привилегии для управления базой данных.

Сначала создайте новую роль:

    
sudo su - postgres -c "createuser timeweb"

Затем создайте новую БД:

    
sudo su - postgres -c "createdb timeweb_db"

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

    
sudo -u postgres psql

Выполните следующий запрос, чтобы предоставить пользователю timeweb привилегии для управления базой данных timeweb_db:

    
GRANT ALL PRIVILEGES ON DATABASE timeweb_db TO timeweb;

Создавать новые роли и базы данных можно и сразу в оболочке СУБД. В таком случае синтаксис будет незначительно отличаться.

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

    
create user cloud with password 'cloudtimeweb';

Чтобы создать новую БД, выполните:

    
create database cloud_db;

Затем нужно также предоставить все привилегии командой GRANT ALL PRIVILEGES ON DATABASE … TO ….

Настройка удалённого доступа

По умолчанию сервер Postgres слушает только локальный интерфейс 127.0.0.1. Это может быть неудобно. Допустим, у вас есть сервер на Timeweb Cloud с установленной СУБД. Гораздо комфортнее будет подключаться к нему удалённо. Для этого нужно настроить сервер на прослушивание других сетевых интерфейсов. 

Чтобы изменить конфигурацию, с помощью любого редактора откройте файл postgresql.conf. В этом примере используется редактор nano:

    
sudo nano /etc/postgresql/12/main/postgresql.conf

Найдите в файле конфигурации раздел CONNECTIONS AND AUTHENTICATION и строку #listen_addresses = 'localhost'. Измените значение строки на listen_addresses = '*'. Если вы хотите, чтобы сервер слушал не все сетевые интерфейсы, а только выбранный, укажите его вместо звёздочки.

Сохраните файл и перезапустите службу Postgres, чтобы изменения вступили в силу:

    
sudo service postgresql restart

Последний шаг — разрешение подключений из сети. Чтобы установить его, нужно отредактировать файл pg_hba.conf. Откройте его в редакторе:

    
sudo nano /etc/postgresql/12/main/pg_hba.conf

Найдите строку IPv4 local connections. Укажите нужную сеть. Например, вот так:

TYPE

DATABASE    

USER

ADDRESS                 

METHOD

host

all

timeweb

192.168.1.134 

md5

Вы можете использовать другие методы аутентификации. Полный их список смотрите в документации СУБД.

Запустите облачную базу PostgreSQL в один клик

Таблица тарифов
Сравнение тарифов
Cloud DB 1/2/20 —
790 ₽/мес
Cloud DB 2/2/30 —
1160 ₽/мес
Cloud DB 2/4/40 —
1580 ₽/мес
Cloud DB 4/8/80 —
3160 ₽/мес
Cloud DB 4/12/120 —
4240 ₽/мес
Cloud DB 6/12/180 —
5460 ₽/мес
Cloud DB 8/16/220 —
7040 ₽/мес
Процессор1 x 3.3 ГГц2 x 3.3 ГГц2 x 3.3 ГГц4 x 3.3 ГГц4 x 3.3 ГГц6 x 3.3 ГГц8 x 3.3 ГГц
Память2 ГБ2 ГБ4 ГБ8 ГБ12 ГБ12 ГБ16 ГБ
Диск NVMe20 ГБ30 ГБ40 ГБ80 ГБ120 ГБ180 ГБ220 ГБ
Резервные копииЕстьЕстьЕстьЕстьЕстьЕстьЕсть
Приватный IPЕстьЕстьЕстьЕстьЕстьЕстьЕсть
PostgreSQL 18
Выбрать
Фиксированный
Произвольный
CPU
RAM
Диск
Стоимость
1 x 3.3 ГГц
2 ГБ
20 ГБ
790 ₽/мес
2 x 3.3 ГГц
2 ГБ
30 ГБ
1 160 ₽/мес
2 x 3.3 ГГц
4 ГБ
40 ГБ
1 580 ₽/мес
Раз в день
0 ₽/месяц
Отключить
Не рекомендуется

Заключение

Установка PostgreSQL на Debian выполняется двумя способами. 

Первый вариант — использование системного репозитория. Его главный плюс — скорость. Не нужно ничего устанавливать дополнительно, достаточно выполнить одну команду. Минус в том, что в системном репозитории не всегда находится последняя версия ПО.

Второй вариант установки — использование официального репозитория PostgreSQL. Этот способ гарантирует, что вы будете пользоваться последней версией СУБД. Но действий придётся выполнить чуть больше — сначала добавить сам официальный репозиторий и лишь затем ставить Постгрес из него. 

При дальнейшей работе с базами PostgreSQL не забывайте создавать бэкапы данных. С этим поможет наша статья «Дампы в PostgreSQL: резервное копирование и восстановление».

Кстати, в официальном канале Timeweb Cloud собрали комьюнити из специалистов, которые говорят про IT-тренды, делятся полезными инструкциями и даже приглашают к себе работать.

18652
6 минут чтения
Средний рейтинг статьи: 5

Читайте также

Хотите внести свой вклад?
Участвуйте в нашей контент-программе за
вознаграждение или запросите нужную вам инструкцию
img-server
Пока нет комментариев