PostgreSQL

Ответить
ya
^-^
Сообщения: 3528
Зарегистрирован: 16 дек 2021, 19:56

PostgreSQL

Сообщение ya »

Да. Для веб-интерфейса удобно установить **pgAdmin 4**. Ниже — базовая установка PostgreSQL из репозитория Debian и pgAdmin в веб-режиме на Debian 13 (Trixie).

### 1. Установите PostgreSQL

```bash
sudo apt update
sudo apt install postgresql
sudo systemctl status postgresql
```

Пакет Debian установит сервер PostgreSQL и запустит службу. Для обычной установки отдельный репозиторий PostgreSQL не требуется. <citation src="3"></citation>

### 2. Создайте пользователя и базу данных

Выполните команду, чтобы открыть консоль от системного пользователя PostgreSQL:

```bash
sudo -u postgres psql
```

В консоли `psql` задайте пароль и создайте роль с правом создавать базы:

```sql
CREATE ROLE dbadmin WITH LOGIN CREATEDB PASSWORD 'ЗАМЕНИТЕ_НА_ДЛИННЫЙ_СЛУЧАЙНЫЙ_ПАРОЛЬ';
CREATE DATABASE appdb OWNER dbadmin;
\q
```

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

### 3. Установите pgAdmin в веб-режиме

Официальный репозиторий pgAdmin поддерживает Debian 13. Добавьте ключ и репозиторий, затем установите веб-пакет: <citation src="1"></citation>

```bash
sudo apt install -y curl ca-certificates gnupg
sudo install -d /etc/apt/keyrings
curl -fsS https://www.pgadmin.org/static/packages_pgadmin_org.pub \
| sudo gpg --dearmor -o /etc/apt/keyrings/packages-pgadmin-org.gpg

echo "deb [signed-by=/etc/apt/keyrings/packages-pgadmin-org.gpg] https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/trixie pgadmin4 main" \
| sudo tee /etc/apt/sources.list.d/pgadmin4.list

sudo apt update
sudo apt install -y pgadmin4-web
sudo /usr/pgadmin4/bin/setup-web.sh
```

Мастер настройки попросит задать email и пароль для входа в pgAdmin. После установки откройте в браузере:

```text
http://IP-адрес-сервера/pgadmin4
```

### 4. Подключите PostgreSQL в pgAdmin

В интерфейсе выберите **Add New Server** и заполните:

- **Name:** любое понятное имя, например `Debian PostgreSQL`
- **Host name/address:** `127.0.0.1`
- **Port:** `5432`
- **Maintenance database:** `postgres`
- **Username:** `dbadmin`
- **Password:** пароль, заданный при создании роли

Для локальной установки подключение через `127.0.0.1` обычно работает без изменения сетевых настроек PostgreSQL. Не открывайте порт `5432` наружу без необходимости. Если веб-интерфейс будет доступен из интернета, ограничьте доступ к нему по сети или через VPN и настройте HTTPS через обратный прокси.

### 5. Проверьте базу данных

После подключения раскройте сервер и базу `appdb`. Для проверки можно открыть **Query Tool** и выполнить:

```sql
SELECT version();
```

Если PostgreSQL нужен на другом сервере, настройка удалённых подключений потребует отдельно настроить прослушивание адресов, правила аутентификации и firewall; безопаснее разрешать соединения только с нужных IP. <citation src="3"></citation>
Ответить