SOFORP Резервные копии 2.2

Please log in or регистрация to like posts.
Модули

Есть два типа владельцев сайтов — те, кто еще НЕ терял данные и те кто ТЕПЕРЬ делает бэкап.

Вообще есть целая пачка модулей для резервного копирования, но они либо дорогие ( от 30$ ), либо кривые, либо тупые, либо все вместе взятое.

К примеру, я в упор не понимаю почему я должен выполнять 20-тиминутную инструкцию по созданию какого-то OAuth-токена, чтобы залить бэкап на свой яндекс диск. А уж когда после всего этого бэкап внезапно перестает работать, тупо проглатывая ошибки, то и вовсе становится грустно.

Особенно «радуют» бэкапы, не отсылающие статус на емейл. Из-за такого бэкапа я был свято уверен что у меня все в порядке, в то время как место на диске закончилось еще месяц назад :)

Предлагаем вашему вниманию модуль SOFORP Резервные копии, который умеет:

  • Работать в условиях жесткой нехватки памяти ( запись идет сразу в файл )
  • Работать в условиях жестких ограничений безопасности ( open_basedir, readonly пермишены на каталог )
  • Сохранять структуру таблиц ( а иначе можно жестко влететь )
  • Писать бэкапы на Яндекс.Диск
  • Жать бэкапы в zip-архив ( файлы и таблицы )
  • Фильтровать список таблиц для бэкапа ( чтобы исключить самые большие и вредные )
  • Фильтровать список файлов для бэкапа ( чтобы исключить бесполезные типа кеша и логов )
  • Блокировать нежелательные ипы ( чтобы бэкапом не заддосили «доброжелатели» )
  • Слать статусное письмо
  • Скачивать резервные копии прямо через админку
  • Удалять резервные копии прямо через админку
  • Восстанавливать базу прямо через админку
  • Создавать резервные копии прямо через админку ( чисто для теста, для регулярной работы рекомендуется использовать крон )
  • Создавать резервные копии через крон

А теперь — слайды:

Требования:
=========
1. vqmod 2.4.1+
2. php 5.3
3. ioncube
Установка
=========

1. Загрузите содержимое папки upload в корень сайта.
2. Установите модуль посредством меню Дополнения \ Модули
3. Установите права на использование модуля в Система \ Пользователи \ Группы пользователей
4. Наслаждайтесь работой модуля.

Обновление на версию 2.0
==========
1. Удалите все файлы предыдущего модуля
2. Далее установите модуль заново
Известные проблемы
===================

1. Не приходит отчет

Это потому что вы не настроили параметры почты ( Система \ Настройка \ Почта ).

2. Аплоад длится невыносимо долго

Это потому что вам достался хитрый хостер. К примеру, hetzner.de именно такой, бэкапы оттуда идут дооолго, но к модулю это отношения не имеет.

3. Аплоад завершается сообщением «You are not authorized to see this!»

Это означает что Яндекс.Диск (тм) не признает вашего права собственности на частичку интернета… В смысле — пароль указан неверно :)

4. Вылетает ошибка 504 Gateway Time-out

Вам нужно увеличить время выполнения скрипта. Либо просите хостера, либо пробуйте сами — https://rtcamp.com/t…execution-time/

К сожалению на дешевых VPS это не возможно, и хоть бэкап в большинстве случаев таки будет выполнен, вы все равно увидите сообщение про HTTP 504. Выход тут один — использовать запуск из-под cron.

5. Вы получаете ошибку «Call to undefined function utf8_substr».

Это означает что у вас стоит древний opencart. Нужно добавить каталог system\helpers из ocstore 1.5.4 и прописать файлы json.php и utf8 в system\startup.php, как это сделано в ocstore 1.5.4

6. Вылетает ошибка «Error: MySQL server has gone away»

Это значит вам попался прижимистый хостер, который установил сравнительно небольшой лимит на время бездействия подключения к MySQL серверу. Такое бывает исключительно на дешевых VPS.

При этом сама резервная копия будет создана и загружена на Яндекс.Диск, но мелкий дискомфорт остается.

Кусочек итогового sql-дампа :
========================

CREATE TABLE IF NOT EXISTS `attribute_description` (
`attribute_id` int(11) NOT NULL,
`language_id` int(11) NOT NULL,
`name` varchar(64) NOT NULL,
PRIMARY KEY (`attribute_id`,`language_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

TRUNCATE TABLE `attribute_description`;

INSERT INTO `attribute_description` (`attribute_id`, `language_id`, `name`) VALUES
('1', '1', 'Description'),
('2', '1', 'No. of Cores'),
('4', '1', 'test 1'),
('5', '1', 'test 2'),
('6', '1', 'test 3'),
('7', '1', 'test 4'),
('8', '1', 'test 5'),
('9', '1', 'test 6'),
('10', '1', 'test 7'),
('11', '1', 'test 8'),
('3', '1', 'Clockspeed'),
('1', '2', 'Description'),
('2', '2', 'No. of Cores'),
('4', '2', 'test 1'),
('5', '2', 'test 2'),
('6', '2', 'test 3'),
('7', '2', 'test 4'),
('8', '2', 'test 5'),
('9', '2', 'test 6'),
('10', '2', 'test 7'),
('11', '2', 'test 8'),
('3', '2', 'Clockspeed');

Такой формат работает как на пустой, так и на существующей базе.

SOFORP (94.9 KiB, 262 downloads)

Мнение

0
0
0
0
0
0
Уже отреагировал на этот пост.

4 comments on “SOFORP Резервные копии 2.2

  1. Так ведь он без ключа не работает
    Fatal error:
    The encoded file /home/f//shop/public_html/admin/controller/tool/soforp_backup.php
    requires a license file soforp_backup_license.txt. in Unknown on line 0

  2. Модуль клевый -МастХэв! Для каждого магаза нужен. Не так уж дорого стоит и автор хороший чел. Я себе брал, разработчик помог все запилить.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *