Стратегії резервного копіювання баз даних
Програма навчання
План навчання
- Визначення RPO та RTO для вашого проекту
- pg_basebackup та фізичні бекапи PostgreSQL
- WAL архівування та налаштування
- Point-in-Time Recovery в PostgreSQL
- mysqldump – налаштування та оптимізація
- Percona XtraBackup для великих баз
- Інкрементні бекапи в MySQL
- Автоматизація через cron та скрипти
- Зберігання бекапів – локально, S3, віддалені сервери
- Тестування процесу відновлення
- Disaster recovery план
Практика: Симуляція різних сценаріїв відмов, відновлення даних під таймером
Результат
Впевненість що ваші дані в безпеці і ви завжди зможете їх відновити.
Детальний опис курсу
Бекапи – це не просто pg_dump раз на день. Це стратегія, тестування, автоматизація і впевненість що ви зможете відновити дані коли щось піде не так.
Скільки даних ви можете дозволити собі втратити? Годину? Хвилину? Це визначає вашу стратегію. Розберемо RPO (Recovery Point Objective) і RTO (Recovery Time Objective) без зайвої теорії – просто що це означає в реальності.
Типи резервних копій
Повні бекапи через pg_basebackup для PostgreSQL. Інкрементні через WAL архівування – як це працює і чому набагато ефективніше ніж щоразу копіювати все.
Для MySQL – mysqldump vs Percona XtraBackup. Перший простіший але повільний на великих базах. Другий складніший в налаштуванні але дає hot backup без блокування таблиць.
Point-in-Time Recovery – відновлення бази на конкретний момент часу. Уявіть хтось видалив важливі дані о 14:23. Ви можете відновити базу на 14:22, до того як сталась біда.
Автоматизація
Напишемо bash-скрипти для автоматичних бекапів. Налаштуєморотацію – старі копії автоматично видаляються. Відправлення в S3 або інше сховище.
Обов'язково практикуємо відновлення. Бекап який не перевірений – це не бекап.