Как установить PostgreSQL 13 на Debian 10 | Debian 9

Как установить PostgreSQL 13 на Debian 10 | Debian 9

 

PostgreSQL — это мощная, отказоустойчивая и отказоустойчивая система управления реляционными базами данных с открытым исходным кодом, на которой работают многие критически важные приложения. База данных PostgreSQL основана на POSTGRES 4.2. На момент обновления этой статьи последним стабильным выпуском PostgreSQL является версия 13. Все новые функции, улучшения и отчеты об исправлениях для PostgreSQL 13 доступны на официальной странице выпуска .

Вот некоторые примечательные новые функции:

  • Улучшения за счет исключения дублирования записей индекса B-дерева — экономия места и повышение производительности за счет
  • Запросы, использующие агрегаты или секционированные таблицы, получают повышенную производительность.
  • Инкрементальная сортировка
  • Лучшее планирование запросов при использовании расширенной статистики
  • Параллельная очистка индексов

Шаг 1. Установка PostgreSQL 13 на Debian 10 | Debian 9

Если вы выполните следующие шаги, описанные в этой статье, вы должны получить работающую и работающую установку PostgreSQL 13 на Debian 10 | Машина Debian 9 Linux.

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

sudo apt update
sudo apt -y upgrade

После этого перезагрузите сервер.

sudo reboot

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

Перед настройкой репозитория APT импортируйте ключ GPG, используемый для подписи пакетов:

sudo apt update
sudo apt -y install gnupg2
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

После импорта ключа GPG добавьте репозиторий PostgreSQL в вашу систему Debian.

echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee  /etc/apt/sources.list.d/pgdg.list

Cat файл, созданный для проверки его содержимого:

$ cat /etc/apt/sources.list.d/pgdg.list
deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main

Шаг 3. Установите PostgreSQL 13 в Debian 10 | Debian 9

Теперь, когда репозиторий добавлен, успешно обновите список пакетов и установите PostgreSQL 13 на Debian 10 / Debian 9 Linux. Сервер может работать в облаке, на локальном оборудовании или в любой другой допустимой среде виртуализации.

sudo apt update

И, наконец, инициируйте установку PostgreSQL 13 на Debian 10 | Debian 9:

sudo apt -y install postgresql-13 postgresql-client-13

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

sudo pg_ctlcluster 13 main start

Подтвердите статус службы и используемый файл конфигурации.

$ sudo pg_ctlcluster 13 main status
pg_ctl: server is running (PID: 4209)
/usr/lib/postgresql/13/bin/postgres "-D" "/var/lib/postgresql/13/main" "-c" "config_file=/etc/postgresql/13/main/postgresql.conf"

Вы также можете использовать команду systemctl для проверки статуса службы.

$ systemctl status postgresql@13-main.service
● postgresql@13-main.service - PostgreSQL Cluster 13-main
   Loaded: loaded (/lib/systemd/system/postgresql@.service; enabled-runtime; vendor preset: enabled)
   Active: active (running) since Fri 2020-10-30 11:27:01 CET; 2min 11s ago
 Main PID: 4209 (postgres)
    Tasks: 7 (limit: 4580)
   Memory: 18.1M
   CGroup: /system.slice/system-postgresql.slice/postgresql@13-main.service
           ├─4209 /usr/lib/postgresql/13/bin/postgres -D /var/lib/postgresql/13/main -c config_file=/etc/postgresql/13/main/postgresql.conf
           ├─4211 postgres: 13/main: checkpointer
           ├─4212 postgres: 13/main: background writer
           ├─4213 postgres: 13/main: walwriter
           ├─4214 postgres: 13/main: autovacuum launcher
           ├─4215 postgres: 13/main: stats collector
           └─4216 postgres: 13/main: logical replication launcher

Oct 30 11:26:59 debian systemd[1]: Starting PostgreSQL Cluster 13-main...
Oct 30 11:27:01 debian systemd[1]: Started PostgreSQL Cluster 13-main.

Запустите командную строку PostgreSQL с помощью команды:

$ sudo su - postgres
postgres@debian:~$ psql
psql (13.0 (Debian 13.0-1.pgdg100+1))
Type "help" for help.

postgres=#

Выполните тестовые операции:

postgres=# exit
postgres@debian:~$ createuser c4geeks
postgres@debian:~$ createdb testdb -O c4geeks

postgres@debian:~$ psql -l
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 testdb    | c4geeks  | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
(4 rows)

Подключитесь к базе данных:

postgres@debian:~$ psql testdb
psql (13.0 (Debian 13.0-1.pgdg100+1))
Type "help" for help.

testdb=#

Установите пароль пользователя:

testdb=#  alter user c4geeks with password 'StrongDBPassw0rd';
ALTER ROLE

Отбросьте базу данных:

testdb=# \q
postgres@debian:~$ dropdb testdb

Я надеюсь, что вы получили удовольствие от разработки с сервером баз данных PostgreSQL 13 на машине Debian Linux.