Установка PostgreSQL (Ubuntu)
🐘 Установка и настройка PostgreSQL на Ubuntu
Этот гайд поможет вам установить PostgreSQL на Ubuntu, создать базу данных и пользователя, настроить удалённое подключение и устранить типичные ошибки.
📦 Установка PostgreSQL
sudo apt update
sudo apt install postgresql postgresql-contrib -y✅ Проверка установки
sudo systemctl status postgresqlВы должны увидеть надпись "active (running)" — это значит, что PostgreSQL запущен.
🧑💻 Создание базы данных и пользователя
Войти в PostgreSQL от имени суперпользователя:
sudo -u postgres psqlСоздать базу данных:
CREATE DATABASE your_database_name;Создать пользователя с паролем:
CREATE USER your_username WITH PASSWORD 'your_password';Выдать права:
GRANT ALL PRIVILEGES ON DATABASE your_database_name TO your_username;Выйти:
\qПроверить созданные БД и пользователей:
sudo -u postgres psql \l # список баз \du # список пользователей
🌐 Настройка удалённого доступа
Найти установленную версию PostgreSQL:
Отредактировать конфиг:
Найти строку:
Изменить на:
Отредактировать правила доступа:
Добавить в конец:
💡 Вместо
md5можно использоватьscram-sha-256(для PostgreSQL 14+)Перезапустить PostgreSQL:
Открыть порт:
🔗 Строка подключения
Формат:
Пример:
Пояснение:
username — имя пользователя
password — пароль
hostname — IP или домен сервера
port — порт PostgreSQL (по умолчанию 5432)
database_name — имя базы
💡 Некоторые приложения используют postgresql:// вместо postgres://
💬 Основные команды PostgreSQL
Подключиться к базе (удалённо):
Подключиться локально:
Внутри psql:
\l— список баз\du— список пользователей\c имя_бд— подключение к базе
🧩 Устранение ошибок
🚫 Не удаётся подключиться удалённо
Проверить, слушает ли PostgreSQL внешний интерфейс:
💡 Если
netstatне установлен:Проверить статус фаервола:
Убедитесь, что в
pg_hba.confесть строка для 0.0.0.0/0 и нужного метода авторизации.
❌ Ошибка авторизации
Проверьте логин/пароль
Убедитесь, что у пользователя есть права на подключение с внешнего IP
📛 База данных не существует / доступ запрещён
Убедитесь, что база существует:
Проверьте права:
⚠️ "Permission denied for schema public"
Если видите ошибку доступа к schema public:
Пример строки подключения:
Решение:
🧭 Быстрые команды
🔁 Управление службой PostgreSQL
💾 Работа с базой
Резервная копия:
Восстановление:
Last updated