Как выполнить резервное копирование и восстановление GreenPlum 6.x

#database-backups #greenplum #wal

#база данных-резервные копии #greenplum #wal

Вопрос:

Я использую GreenPlum 6.x и сталкиваюсь с проблемами при выполнении резервного копирования и восстановления. Есть ли у нас какой-либо инструмент для создания физической резервной копии всего кластера, такой как pgbackrest для Postgres, кроме того, как мы можем очистить WAL master и каждый сегмент, поскольку мы не можем использовать pg_basebackup всего кластера.

Ответ №1:

Используете ли вы Greenplum 6 с открытым исходным кодом или платную версию? За дополнительную плату вы можете загрузить утилиту параллельного резервного копирования gpbackup / gprestore (отдельно от самого программного обеспечения базы данных), которая создаст резервную копию всего кластера с широким спектром опций. При использовании открытого исходного кода ваши возможности в значительной степени ограничены pgdump / pgdumpall.

Насколько мне известно, нет способа очистить журналы WAL. В Greenplum 6 журналы WAL используются для синхронизации всех отдельных ядер postgres по всему кластеру. Вы не хотели бы удалять их по отдельности.

Джим Макканн Инженер по обработке данных VMware Tanzu

Комментарии:

1. Мы используем GreenPlum с открытым исходным кодом, и наша точка монтирования увеличивается день ото дня, поэтому как мы можем поддерживать журналы WAL

Ответ №2:

Я хотел бы лучше понять проблемы, с которыми вы сталкиваетесь при выполнении резервного копирования и восстановления.

Для пользователей базы данных Greenplum с открытым исходным кодом утилиты gpbackup / gprestore можно загрузить со страницы релизов в репозитории Github:

https://github.com/greenplum-db/gpbackup/releases

версия v1.19.0 является последней.

В настоящее время не существует решения для резервного копирования и восстановления на основе pg_basebackup / WAL для Greenplum Database 6.x

Ответ №3:

Журналы WAL периодически очищаются (по мере того, как они реплицируются в mirror и сбрасываются) из master и сегментов по отдельности. Таким образом, очистка вручную не требуется. Вы выяснили, почему журналы WAL не удаляются? Одной из причин может быть то, что зеркала в кластере не работают. Если это произойдет, WAL продолжит монтирование на основной и не будет очищен. Выполните select * from pg_replication_slots; для главного устройства или сегмента, для которого создается WAL, чтобы узнать больше.

Если причиной сборки WAL является необходимость в слоте репликации, поскольку по какой-либо причине зеркало отключено, можно использовать guc max_slot_wal_keep_size для настройки максимального размера, который должен занимать WAL, после этого слот репликации будет отключен и не будет занимать больше места на диске для WAL.

Комментарии:

1. В настоящее время у нас нет зеркала, и мы работаем как отдельный кластер GP без какого-либо standy / mirror есть ли какой-либо безопасный способ, с помощью которого мы можем удалить файлы WAL непосредственно на сервере DB.

2. Старый WAL автоматически удаляется на контрольных точках без зеркал. Итак, я не уверен, зачем вручную удалять файлы WAL, удалять файлы WAL вручную небезопасно. Было бы полезно проверить, сколько файлов WAL вы видите, файлы вообще не перерабатываются с рабочей нагрузкой или количество файлов WAL продолжает расти.