DBA1-13. 02. Использование psql

preview_player
Показать описание
DBA1-13. Тема 02. Использование psql

Авторы курса: Егор Рогов, Павел Лузанов, Илья Баштанов
© Postgres Professional, 2015–2022
Рекомендации по теме
Комментарии
Автор

00:00:15 тема занятия
00:00:34 что такое psql чем отличается от уже разобранного pg_ctlcluster
00:01:16 чем хорош psql и для кого важно уметь им пользоваться
00:01:40 запуск утилиты psql, данные для подключения к серверу PostgreSQL
00:02:39 как внутри psql переподключится в другое место(база или от др. user-a)
00:03:05 как узнать информацию о том к чему сейчас подключены ("где я?")
00:03:25 получение справки. документация прямо из консоли и внутри psql.
00:04:25 еще раз о том что такое psql и какие типы команд он поддерживает
00:05:05 как отличить команды самого psql от SQL-команд. Основные команды psql
00:05:46 команда для выхода из psql - \q
00:05:52 К делу. консоль. интерактивный режим psql
00:06:30 /conninfo узанём куда подключились и что значит вывод этой команды.
00:07:05 откуда в курсе при подключении берётся бд student и юзер student
00:07:20 форматирование результатов запросов в разные форматы
00:08:05 как идёт отправка запроса на сервер `;` и `\g`
00:08:44 что хранит системная таблица pg_tables
00:09:10 о форматировании по умолчанию
00:11:00 \x расширенный режим форматирования.
00:12:15 выполнение отдельного запроса в расширенном(\x) формате; `\gx`
00:12:50 как посмотреть какие еще есть форматы форматирования \pset
00:13:25 взаимодействие pqsl с ОС `\! cmd`
00:14:55 использование скрипты для psql
00:16:50 \g | cmd прямая передача результата через канал(pipe) в нужную команду
00:17:20 \i выполнение SQL-Запросов из скриптового файла
00:17:40 как запускать скрипты прямо из shell-оболочки `psql -f myscript`
00:17:55 \gexex помощник для автоматизации задач - прямой запуск резултата
00:19:06 Переменные в psql и Управляющие конструкции(условные переходы)
00:20:50 Зачем внутренние переменные psql.
00:22:30 Список всех установленных переменных в psql. \set
00:23:00 Условные операторы - if
00:23:57 Проверка задана ли конкретная переменная \echo :{?varname}
00:24:28 Использование проверки наличие переменной в условном операторе \if
00:25:35 знакомство со структурой таблицы pg_tables
00:26:55 настройка psql
00:27:47 что можно настроить в ~/.psqlrc
00:29:16 psqlrc: как просматривать вывод который не вмещается в один экран.
00:30:24 psqlrc: пример создания своей "команды" для выполнения SQL запроса
00:31:35 readline при сборке PostgreSQL из исходников. В чем польза и удобство
00:32:45 Итог занятия.
00:33:10 Практика.
00:36:00 Практика+ ON_ERROR_ROLLBACK. Хитрый режим работы psql с транзакциями

ThorenSky
Автор

Почему может не применяться команды из файла .psqlrc? Лежит в каталоге пользователя и прав на него хватает.

serhioramires
Автор

У меня не работает конструкция \if ... \else
demo=> \if :{?working_dir}
demo=> \else
demo@> \set working_dir `pwd`
\set command ignored; use \endif or Ctrl-C to exit current \if block
demo@> \endif
demo=> echo :working_dir
demo->
demo-> ^C
\if: escaped
demo=>

Что я делаю не так?

natashadala
Автор

На последнем слайде перед "Итогами" опечатка, лишняя пара верхних кавычек между знаками соединения: || ' '.' ' || - должно быть || '.' ||
Правильно:
SELECT tablename, AS bytes FROM pg_tables ORDER BY bytes DESC LIMIT 5;

natashadala
Автор

👍, очень понравилось. Как в школе всё чётко. В документации у вас с ходу не во всё въедешь. 🙄🙄🙄

fedordostoevskiy
Автор

Тема домашнего задания не расскрыта, что оотнимает время

serhioramires
Автор

После запуска psql выдаёт ошибку:
"psql: error: connection to server on socket failed: FATAL: role "student" does not exist"

Devlyashov
Автор

После выполнения Практика+ просто так в psql зайти не получится. Так как вы экспортировали в окружение bin папку. Надо указать путь после пакетной установки. export

ulmasjonkilichov
Автор

\set working_dir `pwd` - у меня просто строка записалась "pwd"

KittenYour