PSg26 PostgreSQL
Продолжительность курса: 40 ак. ч.

Описание курса:
Курс «Администратор баз данных PostgreSQL» — это полноценное погружение в мир самой популярной открытой СУБД. Вы научитесь устанавливать и конфигурировать сервер, проектировать базы данных, управлять доступом, оптимизировать запросы с помощью индексов, обеспечивать отказоустойчивость через резервное копирование и мониторинг. Программа охватывает как теорию (архитектура, транзакции, WAL), так и практические лабораторные работы (работа с psql, pgAdmin, JDBC, настройка WildFly, вакуумизация, PITR). После курса вы сможете самостоятельно администрировать PostgreSQL в корпоративной среде.

Аудитория:
• системные администраторы, переходящие на PostgreSQL
• разработчики
• специалисты по эксплуатации, отвечающие за базы данных в организации

Необходимая подготовка:
• Уверенное владение операционной системой Linux (CentOS/Red Hat)
• Базовое понимание реляционных баз данных и SQL
• Опыт работы с командной строкой и текстовыми редакторами (vim/nano)

Программа курса:
Модуль 1. Введение в PostgreSQL
• Краткая история PostgreSQL
• Предназначение и функциональность, управление базой данных
• Место базы данных в трехзвенной архитектуре вычислений масштаба предприятия
• Лабораторная работа: Знакомство с экосистемой PostgreSQL

Модуль 2. Архитектура PostgreSQL
• Общее устройство сервера базы данных, основные компоненты
• Управление транзакциями. Отличие бизнес-транзакций от транзакций базы данных
• Двухфазный и однофазный commit
• Как сервер приложений помогает базе данных
• Базы данных и схемы, системный каталог и метаданные базы данных
• Как устроены табличные пространства базы данных PG
• Лабораторная работа: Исследование архитектуры PostgreSQL и системного каталога

Модуль 3. Установка PostgreSQL
• Подготовка операционной системы CentOS для размещения базы данных
• Использование ARM процессоров для работы PG
• Компиляция базы данных из исходных кодов
• Подготовка каталогов для размещения баз данных и табличных пространств
• Задачи администратора. Основные утилиты администратора для управления базой данных
• Запуск PG из командной строки и как сервис операционной системы
• Расширения сервера PG
• Лабораторная работа: Установка PostgreSQL из исходных кодов и настройка сервиса

Модуль 4. Использование psql, pgcli, pgadmin (в примерах)
• JDBC драйвер для работы с базой данных
• Доступ к PG из Java-приложений, основные интерфейсы
• Примеры доступа
• Развертывание сервера WildFly и конфигурация его для работы с PG (пул соединений)
• Загрузка простого приложения на сервер приложений и тестирование его совместно с базой данных
• Настройка удаленного взаимодействия с PG
• Лабораторная работа: Подключение к PostgreSQL через psql, pgAdmin и JDBC
• Лабораторная работа: Настройка WildFly и пула соединений с PostgreSQL

Модуль 5. Базы данных. Создание
• Кластер базы данных
• Схемы и пространства имен внутри базы данных
• Пользователи
• Специальные схемы и их назначение
• Временные схемы и таблицы - особенности взаимодействия с сервером приложений
• Порядок авторизации пользователя в базе данных
• Настройка пула соединений сервера приложений для авторизации конкретного пользователя
• Лабораторная работа: Создание базы данных, схем и пользователей

Модуль 6. Табличные пространства и каталоги
• Управление табличными пространствами
• Табличные пространства и метаданные
• Лабораторная работа: Создание табличных пространств на различных носителях

Модуль 7. Системный каталог
• Организация SQL доступа
• Общие объекты кластера базы данных
• Правила именования объектов в PG
• Специальные типы данных в определении первичных и внешних ключей системного каталога
• Определение места размещения табличных пространств на физических носителях
• Лабораторная работа: Исследование системного каталога и работа с метаданными

Модуль 8. Основные объекты БД
• Таблицы и типы данных. Создание таблиц и размещение данных в конкретных табличных пространствах
• Описание колонок
• Ограничения целостности в PG (проверки, внешние и первичные ключи, NOT NULL, UNIQUE)
• Системные столбцы;
• Изменение и удаление таблиц
• Права и роли в базе данных, привилегии. Политики защиты строк
• Представления. Материализованные представления
• Схемы в базе данных
• Лабораторная работа: Создание и модификация таблиц, настройка ограничений целостности
• Лабораторная работа: Управление правами доступа и создание представлений

Модуль 9. Выборка данных из таблиц
• Соединение, агрегирование и группировка, подзапросы - правила работы команды SELECT
• Команды DML
• PL/pgSQL процедурный язык (легкий обзор, преимущества и недостатки)
• Поддерживаемые типы данных. Структура блока
• Объявление переменных, параметров, процедурных блоков
• Наследование типов данных базы данных
• Тип данных запись. Обзор операторов
• Явные и неявные курсоры
• Динамический SQL
• Статус выполнения команды - GET DIAGNOSTICS
• Обработка исключений
• Лабораторная работа: Написание сложных запросов SELECT с соединениями и агрегацией
• Лабораторная работа: Создание хранимых процедур и функций на PL/pgSQL

Модуль 10. Индексы
• Типы индексов и их создание
• Составные и уникальные индексы
• Функциональные индексы
• Использование индексов
• Индексирование части строк таблицы
• Лабораторная работа: Создание различных типов индексов и анализ их эффективности

Модуль 11. Транзакции в базе данных PG
• Уровни изоляции транзакций
• Многоверсионность строк в таблицах
• Блокировки на уровне строк и таблиц
• Распределенные транзакции и XA драйвер PG сервера приложений
• ORM и JPA сервера приложений для взаимодействия с базой данных PG
• Примеры использования
• Распределенные транзакции PG и механизмы JMS сервера приложений
• Просмотр информации о блокировках
• Лабораторная работа: Эксперименты с уровнями изоляции и блокировками

Модуль 12. Конфигурирование сервера
• Файл postgresql.conf
• Лабораторная работа: Настройка основных параметров сервера

Модуль 13. Подключение и аутентификация
• Конфигурационный файл pg_hba.conf
• Лабораторная работа: Настройка удаленного доступа и методов аутентификации

Модуль 14. Мониторинг работы системы
• Стандартные инструменты Unix
• Конфигурация системы сбора статистики
• Просмотр статистики через представления словаря метаданных
• Дополнительные функции для просмотра статистической информации
• Компиляция сервера с предоставлением трассировки во время выполнения
• Мониторинг использования дискового пространства
• Журнал упреждающей записи (WAL) и асинхронное подтверждение транзакций
• Настройка WAL
• Лабораторная работа: Настройка сбора статистики и мониторинг производительности

Модуль 15. Сопровождение PostgreSQL
• Основные задачи сопровождения
• Вакуумизация и анализ таблиц
• Лабораторная работа: Выполнение регламентных задач по обслуживанию базы данных

Модуль 16. Логическое резервирование
• Инструменты логического резервирования (pg_dump, pg_dumpall)
• Восстановление из логических копий
• Лабораторная работа: Создание логической резервной копии и восстановление

Модуль 17. Физическое резервирование
• Инструменты физического резервирования (pg_basebackup)
• Восстановление из физических копий (PITR)
• Настройка архивации WAL
• Лабораторная работа: Создание физической резервной копии и восстановление с использованием PITR

Окончательная цена указывается в договоре на обучение. Записаться на курс

Характеристики курса

  • Академ. часов: 40
  • Количество мест: 8
  • Направление: Курсы для ИТ-специалистов
  • Город: Москва, Пермь
  • Очно: 50900 ₽
  • Вебинар: 50900 ₽

Расписание

НачалоОкончание
19 октября 2026 23 октября 2026
09 ноября 2026 13 ноября 2026
Записаться на курс