1
Что такое слоты
Назначение слотов, физические vs логические, WAL retention
25 минУрок 1 из 6
Прогресс0%
Теория
Слот репликации (replication slot) — это механизм PostgreSQL, который гарантирует, что мастер не удалит WAL-сегменты до тех пор, пока реплика их не получит.
Без слотов мастер может удалить WAL до того, как реплика успеет его применить — это приведёт к разрыву репликации.
Физические слоты работают на уровне WAL-сегментов и не зависят от логической структуры данных.
Слоты имеют два ключевых атрибута: restart_lsn (начальная точка чтения) и confirmed_flush_lsn (подтверждённая позиция).
Практика
1. Проверка текущих слотов
Посмотрите, какие слоты уже существуют:
Проверка текущих слотов
Команда
sudo -u postgres psql -c "SELECT slot_name, slot_type, active FROM pg_replication_slots;"Вывод:
slot_name | slot_type | active -----------+-----------+-------- (0 rows)
2. Проверка WAL-файлов
Посмотрите доступные WAL-сегменты:
Проверка WAL-файлов
Команда
sudo -u postgres psql -c "SELECT pg_ls_waldir();"Вывод:
name --------------- 000000010000000000000001 000000010000000000000002 (2 rows)
Проверка
Убедитесь, что WAL-уровень поддерживает слоты:
Проверка
Команда
sudo -u postgres psql -c "SHOW wal_level;"Вывод:
wal_level ----------- replica