Это руководство проведет вас через шаги, необходимые для установки PostgreSQL 11 на Debian 10 (Buster).
PostgreSQL – это мощный, расширяемый сервер баз данных, написанный на C. Это самая совершенная в мире система реляционных баз данных с более чем 30-летним активным развитием, которая заслужила хорошую репутацию благодаря надежности, надежности функций и производительности.
Первый выпуск PostgreSQL 11 был 2018-10-18, и вы можете проверить более подробную информацию на странице релиза.
Выполните несколько шагов ниже, чтобы установить PostgreSQL 11 в Debian 10 (Buster).
Шаг 1: Добавить репозиторий PostgreSQL
Начните с проверки того, что все обновлено в вашей системе Debian 10.
sudo apt update sudo apt -y upgrade
Затем импортируйте ключ подписи репозитория:
sudo apt install -y vim wget wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Добавьте репозиторий:
RELEASE=$(lsb_release -cs) echo "deb http://apt.postgresql.org/pub/repos/apt/ ${RELEASE}"-pgdg main | sudo tee /etc/apt/sources.list.d/pgdg.list
Шаг 2: Установите PostgreSQL 11 на Debian 10 (Buster)
Теперь установите PostgreSQL 11 на Debian 10 Buster, выполнив команду ниже.
sudo apt update sudo apt -y install postgresql-11
Служба обычно запускается после установки.
$ systemctl status postgresql ● postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled) Active: active (exited) since Fri 2019-03-29 13:15:54 UTC; 3min 37s ago Main PID: 1360 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 1148) Memory: 0B CGroup: /system.slice/postgresql.service
Нам нужно установить пароль администратора PostgreSQL:
$ sudo su - postgres postgres@deb10:~$ psql -c "alter user postgres with password 'StrongDBPassword'" ALTER ROLE
Шаг 3. Включите удаленный доступ (необязательно)
По умолчанию доступ к серверу баз данных PostgreSQL осуществляется только с локального хоста.
$ ss -tunelp | grep 5432 tcp LISTEN 0 128 127.0.0.1:5432 0.0.0.0:* users:(("postgres",pid=15785,fd=3)) uid:111 ino:42331 sk:6 <->
Отредактируйте файл конфигурации PostgreSQL 11, если вы хотите изменить адрес прослушивания:
sudo vim /etc/postgresql/11/main/postgresql.conf
Вставьте строку, показанную ниже под секцией CONNECTIONS AND AUTHENTICATION
listen_addresses = '*' # Don't do this if your server is on public network
Вы также можете указать IP-адрес сервера
listen_addresses = '10.10.0.2' # Recommended for LAN connections to DB Server
Перезапустите postgresql после внесения изменений.
sudo systemctl restart postgresql
подтвердите
$ ss -tunelp | grep 5432
tcp LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* uid:108 ino:74999 sk:a <->
tcp LISTEN 0 128 [::]:5432 [::]:* uid:108 ino:75000 sk:b v6only:1 <->
Если у вас есть активный брандмауэр UFW, разрешите порт 5432 для сетевых подключений.
sudo ufw allow 5432/tcp
Шаг 4. Проверка установки PostgreSQL
Добавьте тестовую базу данных пользователя:
$ sudo su - postgres postgres@deb10:~$ createuser test_user1
Добавьте тестовую базу данных и предоставьте право собственности для test_user1:
postgres@deb10:~$ createdb test_db -O test_user1
Установите пароль пользователя:
postgres@deb10:~$ psql psql (11.2 (Debian 11.2-2)) Type "help" for help. postgres=# alter user test_user1 with password 'DBUserPassword'; ALTER ROLE
Войдите в базу данных test_db:
postgres@deb10:~$ psql -l | grep test_db test_db | test_user1 | UTF8 | en_US.UTF-8 | en_US.UTF-8 | postgres@deb10:~$ psql test_db psql (11.2 (Debian 11.2-2)) Type "help" for help. test_db=#
Создайте таблицу и добавьте несколько фиктивных данных:
test_db=# create table test_table ( id int,first_name text, last_name text ); CREATE TABLE test_db=# insert into test_table (id,first_name,last_name) values (1,'John','Doe'); INSERT 0 1
Показать данные таблицы:
test_db=# select * from test_table; id | first_name | last_name ----+------------+----------- 1 | John | Doe (1 row) test_db=#
Давайте удалим нашу тестовую базу данных, чтобы сохранить чистую установку.
postgres@deb10:~$ dropdb test_db