Матвей Земсков

Заметки веб-мастера

Пятница, 31 января 2020 22:32

Правильное резервное копирование больших проектов Битрикс

Оцените материал
(302 голосов)

Резервные копии больших проектов таких как коробочные версии порталов Битрикс24, на которых хранится большой объем информации не стоит создавать исключительно стандартными средствами системы. Как правило больше всего файлов хранится в папке битрикс upload. Обычно там находятся файлы диска, вложения к задачам, записи телефонных звонков и многое другое.

Если делать резервную копию средствами системы и включать в нее папку upload, то при распаковке копии с помощью файла битрикс restore.php можно получить неприятный сюрприз - архив с копией окажется «битым», не распакуется и вам придется приложить огромные усилия для получения файлов из архива с резервной копией.

Может получится так, что вы не сможете их получить вовсе. В этой небольшой статье я расскажу вам как нужно правильно создавать резервную копию большого проекта, когда в папке битрикс upload хранится несколько десятков гигабайт информации.

битрикс restore php ошибка при восстановление копии

Итак, действовать мы будем следующим образом: сначала создадим архив с ядром и БД средствами Битрикса (исключим из него папку upload и некоторые другие папки), а папку upload создадим через консоль командной строки, подключившись к порталу по SSH.

Кстати создать архив с помощью системы можно 2 способами: через административную панель сайта или запустив php-скрипт резервного копирования в командной строке. Архивировать в консоли считается более надежным и профессиональным способом – так как меньше шансов, что произойдет какая-нибудь ошибка, нежели при запуске инструмента архивации через браузер. В любом случае выбирать нужно вам.

В обоих случаях резервное копирование битрикс начать стоит с настроек копирования.

Настройки для первого способа можно сделать здесь: Настройки→Инструменты→Резервное копирование→Создание резервной копии (вкладка «Параметры»). Нужно включить экспертные настройки создания резервной копии.

До параметров резервного копирования для второго способа можно добраться следующим образом: Настройки→Инструменты→Резервное копирование→Регулярное резервное копирование (вкладка «Параметры»).

Параметры копирования находятся на разных страницах административной панели, но опции для настройки содержат практически одинаковые.

Общие параметры резервного копирования:

  • Размещение резервной копии: выбираем вариант «в папке сайта»
  • Архивировать базу данных: ДА
  • Исключить из базы данных: отмечаем все 3 флажка (исключать статистику, поисковый индекс, журнал событий)
  • Архивировать ядро: ДА
  • Архивировать публичную часть: ДА
  • Исключить из архива файлы и директории по маске: указываем папки /upload, /bitrix/cache, /bitrix/backup, /bitrix/managed_cache, /bitrix/stack_cache, /upload/resize_cache, /bitrix/html_cache, /bitrix/tmp
  • Шифровать данные резервной копии: НЕТ
  • Проверить целостность архива после завершения: ДА
  • Отключить компрессию архива (снижение нагрузки на процессор): ДА
  • Длительность шага: 20 сек., интервал: 3 сек.
  • Максимальный размер несжатых данных в одной части архива (МБ): 2047

Параметры для 2-го способа (запуск скрипта через командную строку):

  • Метод запуска: наш выбор - «через прямой запуск /bitrix/modules/main/tools/backup.php»
  • Удалять локальные резервные копии: выбираем вариант «никогда не удалять»

Если вы выбрали первый способ, то после установки параметров можно смело запускать создание резервной копии bitrix.

Если выбран второй способ, то нужно подключиться к серверу по SSH. Обращаю внимание, что подключаться все команды в консоли нужно под пользователем bitrix. Если вы авторизовались под пользователем root, то выполните команду

$ su bitrix

Для запуска резервного копирования выполняем следующую команду:

$ php –f /hiome/bitrix/www/ bitrix/modules/main/tools/backup.php

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

запуска резервного копирования через php cli

Переходим к архивации содержимого папки upload. Если в папке хранится большое количество файлов и их объем составляет несколько гигабайт, то перед архивацией советую вам проверить свободное место на диске командной

$ df –h

Если места достаточно, то перейдите в папку, где хотите сохранить архив, например, /home/bitrix/www. Затем запустите команду:

$ tar -czvf upload.tar.gz ./upload

После того, как архив будет создан вы сможете скачать его на свой ПК. С архивом большого объема при загрузке могут возникнуть проблемы, поэтому лучше качать его не через FTP-клиент, а с помощью программы Download Master. Возможности этой программы позволяют загрузить файлы по FTP.

Если вдруг вам понадобится восстановить копию, созданную описанным в статье способом, то просто загрузите архив с копией ядра и БД в папку на сервере, где у вас должен размещаться портал (например, /home/bitrix/www) вместе с файлом restore.php и запустите восстановление в браузере.

После успешного завершения установки, загрузите в ту же папку архив с битрикс upload и выполните распаковку:

$ tar -xvf upload.tar.gz

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

Прочитано 20727 раз
Мои услуги

Предлагаю следующие услуги:

  • Верстка шаблона сайта из дизайн-макета для CMS «1С-Битрикс Управление сайтом» и CMS “Joomla”
  • Создание форм различной сложности (обратная связь, анкеты и тп) для указанных CMS
  • Настройка и кастомизация компонентов и модулей для указанных CMS
  • Доработка модулей и компонентов для указанных CMS, добавление нестандартного функционала
  • Разработка лендингов (landing-pages)

По все вопросам обращайтесь через форму обратной связи

Скачать

Предлагаю вашему вниманию:

Наверх