Создание, сопровождение и продвижение сайтов на CMS Drupal

Настройка автоматического бэкапа сайта на Друпал. Drupal Backup and Migrate Module.

 BackupЗадачу для себя поставил следующую – необходима система автоматического бэкапирования сайта на Друпал со следующими функциями:

  • Бэкап таблиц базы данных, файлов Друпал и модулей, файлы данных сайта (изображения)
  • Возможность настройки периодичности бэкапа для различных данных
  • Реализация передачи бэкапа по почте и сохранение в отдельном каталоге на сервере
  • Решение должно быть реализовано на стандартном шаред хостинге.

Для реализации данной задачи использую модуль Backup and Migrate Module. Установка модуля на сайт стандартная. Настройка производится по адресу admin/content/backup_migrate

backup & migrate
В целом модуль со стандартными настройками практически полностью готов к работе. Необходимо только в Destinations (цели бэкапа) добавить необходимые пути (в моем случае это почтовый адрес), настроить стандартный профиль - Default Settings под свои нужды, и настроить периодичность выполнения бэкапа в Schedule

Создание Destinations (цели бэкапа)

Добавление целей бэкапа
Целями Бэкапа могут быть:

  • Server Directory – каталог на сервере. По-умолчанию предлагается два каталога для ручного (sites/default/files/backup_migrate/manual) и автоматического (sites/default/files/backup_migrate/scheduled) бэкапа, но можно создать новые.
  • MySQL Database – Резервная база данных. Используется только MySQL. Так же удобный вариант резервного копирования для быстрого восстановления работы сайта.
  • FTP Directory – удаленный ФТП каталог. При наличии нескольких хостингов различных провайдеров для надежности можно настроить и подобное резервное копирование.
  • Amazon S3 Bucket – платный сервис от Amazon. Возможно использование для бэкапов платного сервиса от Amazon
  • Email – почтовый адрес для отсылки бэкапа. Пересылка резервной копии базы данных на почту. Достаточно просто указать ваш Email

Список целей бэкапа
Настройка стандартного профиля - Default Settings

Настройки профиля используем стандартные, но если необходимо для разных случаев использовать разные, тогда можно создать дополнительный профиль.

Backup file

Имя файла формируется из имени сайта и штампа времени. Для формирования имени файла можно использовать Token. Используем архивирование файла GZip (По-умолчанию не используется архивирование). Используя модуль AES Encryption Module можно настроить шифрование.

Настройка стандартного профиля backup migrate

Database Options

Выбор таблиц для бэкапа. Создатели модуля настоятельно не рекомендуют менять данные настройки, если вы не знаете, какие таблицы необходимы для работы вашего сайта. Имеется два списка таблиц. Таблицы из первого списка вообще не будут попадать в файл бэкапа. Только данные таблиц второго списка не будут попадать в файл бэкапа, но структура таблицы будет сохранена.

Исходим из соображений, что для восстановления работоспособности сайта нам необходимы все таблицы, но не все данные. Нет необходимости (скорее даже не допустимо) сохранять данные таблиц cache*, sessions, watchdog и xmlsitemap*, devel_times. Для более тонкой настройки можно исключить и ряд других таблиц в зависимости от установленных модулей.

Для удобства выбора можно нажать на View as checkboxes.
Для предотвращения потери данных можно выбрать блокирование таблиц во время бэкапа.

Дополнительные настройки

В дополнительных настройках можно указать почтовые адреса для отсылки сообщений об удачном и неудачном резервном копировании. Так же можно указать необходимость установки сайта в off-line во время резервного копирования.

Планировщик резервного копирования

Настройка планировщика задач backup-migrate

Для выполнения автоматического бэкапа базы данных Друпал создаем две задачи: одну для сохранения каждый день на диске и другую для резервной копии по почте раз в неделю. При создании задачи резервного копирования необходимо присвоить наименование задачи, указать периодичность выполнения и место сохранения данных. Результат ниже:

Запланированные задачи backup migrate schedule

Тестирование вручную.

Для тестирования бэкапа вручную можете запустить на выполнение крон – со страницы admin/reports/status – «Отчет состояния системы»

Ручное резервное копирование базы данных Друпал можно так же производить во вкладке Backup, выбрав для быстрого копирования БД, цель копирования и настройки бэкапа.