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

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

18550
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ЕстьЕстьЕстьЕстьЕстьЕстьЕсть
Фиксированный
Произвольный
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-тренды, делятся полезными инструкциями и даже приглашают к себе работать.

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

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

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