Как установить PostgreSQL 12 на Ubuntu 18.04 / Ubuntu 16.04

Как установить PostgreSQL 12 на Ubuntu 18.04

 

Это руководство проведет вас через шаги, используемые для установки PostgreSQL 12 в системе Ubuntu 18.04 / Ubuntu 16.04 Linux. PostgreSQL — одна из наиболее распространенных систем управления объектно-реляционными базами данных, основанная на POSTGRES 4.2. PostgreSQL 12 был выпущен для общего использования, подходит для производства и всех вариантов использования разработки.

Для CentOS 7/8: Как установить PostgreSQL 12 на CentOS 7 / CentOS 8

Для Fedora: установка PostgreSQL 12 на Fedora

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

Если вы хотите увидеть все новые функции и улучшения в PostgreSQL 12, посетите страницу заметок о выпуске PostgreSQL 12, так что проверьте основные улучшения в PostgreSQL 12. Не будем долго ждать, давайте остановимся на установке PostgreSQL 12 в системе Ubuntu 18.03 Linux.

Шаг 1: Обновление системы

Рекомендуется обновить ваши текущие системные пакеты, если это новый экземпляр сервера.

sudo apt update
sudo apt -y install vim bash-completion wget
sudo apt -y upgrade

Перезагрузка необходима после обновления.

sudo reboot

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

Нам нужно импортировать ключ GPG и добавить репозиторий PostgreSQL 12 на нашу машину с Ubuntu. Выполните следующие команды, чтобы выполнить это.

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

После импорта ключа GPG добавьте содержимое репозитория в вашу систему Ubuntu 18.04 / 16.04:

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

Добавленный репозиторий содержит много различных пакетов, включая сторонние дополнения. Они включают:

  • PostgreSQL-клиент
  • PostgreSQL
  • libpq-DEV
  • PostgreSQL-сервер-DEV
  • пакеты pgadmin

Шаг 3: Установите PostgreSQL 12 на Ubuntu 18.04 / Ubuntu 16.04 LTS

Теперь хранилище успешно добавлено, обновите список пакетов и установите серверные и клиентские пакеты PostgreSQL 12 в вашей системе Ubuntu 18.04 / Ubuntu 16.04 Linux.

sudo apt update
sudo apt -y install postgresql-12 postgresql-client-12

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

Сервис PostgreSQL запускается и настроен на запуск после каждой перезагрузки системы.

$ systemctl status postgresql.service 
 ● postgresql.service - PostgreSQL RDBMS
    Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
    Active: active (exited) since Sun 2019-10-06 10:23:46 UTC; 6min ago
  Main PID: 8159 (code=exited, status=0/SUCCESS)
     Tasks: 0 (limit: 2362)
    CGroup: /system.slice/postgresql.service
 Oct 06 10:23:46 ubuntu18 systemd[1]: Starting PostgreSQL RDBMS…
 Oct 06 10:23:46 ubuntu18 systemd[1]: Started PostgreSQL RDBMS.

$ systemctl status [email protected] [email protected] - PostgreSQL Cluster 12-main
    Loaded: loaded (/lib/systemd/system/[email protected]; indirect; vendor preset: enabled)
    Active: active (running) since Sun 2019-10-06 10:23:49 UTC; 5min ago
  Main PID: 9242 (postgres)
     Tasks: 7 (limit: 2362)
    CGroup: /system.slice/system-postgresql.slice/[email protected]
            ├─9242 /usr/lib/postgresql/12/bin/postgres -D /var/lib/postgresql/12/main -c config_file=/etc/postgresql/12/main/postgresql.conf
            ├─9254 postgres: 12/main: checkpointer   
            ├─9255 postgres: 12/main: background writer   
            ├─9256 postgres: 12/main: walwriter   
            ├─9257 postgres: 12/main: autovacuum launcher   
            ├─9258 postgres: 12/main: stats collector   
            └─9259 postgres: 12/main: logical replication launcher   
 Oct 06 10:23:47 ubuntu18 systemd[1]: Starting PostgreSQL Cluster 12-main…
 Oct 06 10:23:49 ubuntu18 systemd[1]: Started PostgreSQL Cluster 12-main.

$ systemctl is-enabled postgresql
enabled

Шаг 4. Проверка соединения с PostgreSQL

Во время установки пользователь postgres создается автоматически. Этот пользователь имеет полный доступ superadmin ко всему вашему экземпляру PostgreSQL. Прежде чем переключиться на эту учетную запись, ваш системный пользователь должен иметь права sudo.

sudo su - postgres

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

psql -c "alter user postgres with password '[email protected]'"

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

$ psql

Получить информацию о подключении, как показано ниже.

$ psql
psql (12.0 (Ubuntu 12.0-1.pgdg18.04+1))
Type "help" for help.

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".

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

postgres=# CREATE DATABASE mytestdb;
CREATE DATABASE
postgres=# CREATE USER mytestuser WITH ENCRYPTED PASSWORD '[email protected]';
CREATE ROLE
postgres=# GRANT ALL PRIVILEGES ON DATABASE mytestdb to mytestuser;
GRANT

Список созданных баз данных:

postgres=# \l
                               List of databases
   Name    |  Owner   | Encoding | Collate |  Ctype  |    Access privileges    
-----------+----------+----------+---------+---------+-------------------------
 mytestdb  | postgres | UTF8     | C.UTF-8 | C.UTF-8 | =Tc/postgres           +
           |          |          |         |         | postgres=CTc/postgres  +
           |          |          |         |         | mytestuser=CTc/postgres
 postgres  | postgres | UTF8     | C.UTF-8 | C.UTF-8 | 
 template0 | postgres | UTF8     | C.UTF-8 | C.UTF-8 | =c/postgres            +
           |          |          |         |         | postgres=CTc/postgres
 template1 | postgres | UTF8     | C.UTF-8 | C.UTF-8 | =c/postgres            +
           |          |          |         |         | postgres=CTc/postgres
(4 rows)

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

postgres-# \c mytestdb
You are now connected to database "mytestdb" as user "postgres".

Другие установленные утилиты PostgreSQL, такие как createuser и creatb, могут использоваться для создания базы данных и пользователей.

[email protected]:~$ createuser myuser --password
Password:
[email protected]:~$ createdb mydb -O myuser
[email protected]:~$ psql -l 

Мы можем создать и подключиться к базе данных на сервере PostgreSQL.

Шаг 5. Настройка удаленного подключения (необязательно)

Установка PostgreSQL 12 в Ubuntu принимает подключения только от localhost. В идеальных производственных средах у вас будет центральный сервер базы данных и подключенные к нему удаленные клиенты — но, конечно, в частной сети (LAN).

Чтобы включить удаленные подключения, отредактируйте файл конфигурации PostgreSQL:

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

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

# Listen on all interfaces
listen_addresses = '*'

# Listen on specified private IP address
listen_addresses = '192.168.10.11'

После изменения перезапустите сервис postgresql.

sudo systemctl restart postgresql

Подтвердите адреса прослушивания.

# netstat  -tunelp | grep 5432
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      111        112837     11143/postgres      
tcp6       0      0 :::5432                 :::*                    LISTEN      111        112838     11143/postgres      

Теги :

  • Установите PostgreSQL 12 на Ubuntu 18.04
  • Установка PostgreSQL 12 на Ubuntu 16.04
  • Установите PostgreSQL 12 в Ubuntu
  • Установка PostgreSQL 12 на Ubuntu 18.04
  • Установите PostgreSQL 12 на Ubuntu 16.04