Командная строка PostgreSQL представлена утилитой psql - это интерактивный терминальный клиент для работы с PostgreSQL. Она используется администраторами БД, backend‑разработчиками и DevOps‑инженерами для подключения к серверу, выполнения SQL‑запросов, администрирования и отладки.
Подключение к PostgreSQL
psql -h host -p port -U username -d database
Пример:
psql -h localhost -p 5432 -U postgres -d mydb
- Часто используемые опции:
Если параметры не указаны, psql использует переменные окружения (PGHOST, PGUSER, PGDATABASE).
Навигация и справка
- Получение помощи:
\?
- Список всех meta‑команд psql:
\h \help
- Справка по SQL‑командам:
\h SELECT
Работа с базами данных
- Просмотр баз данных:
\l \list
- Подключение к базе:
\c dbname \connect dbname
- Информация о текущем подключении:
\conninfo
- Список таблиц:
\dt
- Таблицы во всех схемах:
\dt *.*
- Системные таблицы:
\dS
- Представления:
\dv
- Материализованные представления:
\dm
- Описание таблицы:
\d table_name
- Подробное описание:
\d+ table_name
Экспорт и импорт базы данных (Backup, Restore)
- Экспорт базы данных:
pg_dump -U postgres -W -F p db > db.sql
- Импорт базы данных:
psql -U postgres -d db < db.sql
- Экспорт только структуры:
pg_dump -U postgres -s db > schema.sql
Другие
- Список пользователей (ролей):
\du \du+
- Список схем:
\dn \dn+
- Список индексов:
\di
- Последовательности (SEQUENCE):
\ds \ds+
- Список функций:
\df
- Процедуры:
\dfp
- Триггеры:
\dy
- История команд:
\s
- Выполнение предыдущей команды:
\g
- Редактирование в редакторе:
\e
- Выход из psql:
\q
Source: Orkhan Alishov's notes