Создания скрипта для выполнения бэкапов, после будет возможно создавать бэкап нужного по расписанию. Так как штатный запуск делает только то что выбрано.
Автор сценария Александр Зайцев.
Недавно в чате возникало обсуждение возможности делать по расписанию разные типы бэкапов. А так как залезать в настройки и каждый раз править их не для владельцев "умных домов", то был проведен ряд изысканий и написан данный скрипт.
Что нужно для работы скрипта? при условии конечно что модуль уже установлен:
1 Два раза настроить модуль бэкапов, полный (с файлами и бд) и мини (только бд и файл конфигураци, так как только БД модуль делает с ошибками).
2 После каждой настройки получить содержимое ячейки столбца DATA в котором сохраняются эти настройки
// копируем код в консоль МД и копируем вывод
$Record = SQLSelectOne("SELECT * FROM project_modules WHERE NAME='backup'"); echo $Record['DATA'];
3 Подставить полученные на втором этапе данные в кавычки в коде ниже
include(DIR_MODULES . 'backup/backup.class.php'); // Подключение модуля Бэкап
$backup_module = new backup();
$Record = SQLSelectOne("SELECT * FROM project_modules WHERE NAME='backup'");
if ( date("N") == 2 || date("N") == 5 ) { //выборка дней для полного бэкапа
//full
$Record['DATA'] = 'полная дата'; //сюда данные от полного бэкапа
SQLUpdate('project_modules', $Record); // вставляем данные для бэкапа
$backup_module->create_backup(); //запуск бэкапа
//mini Возвращает данные мини бэкапа, так как автор любит перед изменениями делать мелкий бэкап другим скриптом
$Record['DATA'] = 'минимальная дата';
SQLUpdate('project_modules', $Record);
} else { //все дни что не попадают под условия выше будет выполняться эта часть кода, а имено мини бэкап
$Record['DATA'] = ' минимальная дата'; // сюда вставляем данные для мини бэкапа
SQLUpdate('project_modules', $Record);
$backup_module->create_backup();
}
Теперь прописываем созданный сценарий на запуск в дневной таймер и ваши копии делаются сами.
Дополнять и расширять условиями можно как вам нравится.
Так как данные из БД содержат логины и пароли в открытом виде, данный скрипт при попадании в коннект будет содержать их. Рекомендую данные внести в свойства, а уже из свойств вставлять их. Автором это не предусмотренно, но уверен вы справитесь.
Если пожелаете то можете разместить код правленный в комментариях.
Внимательно с настройками, папки бэкап и cms нужно включать в бэкап очень аккуратно, так как в них много тяжелой информации, в идеале их чистить перед бэкапом.
Если кто допишет очистку этих папок с умом, прошу разместить код в комментах.
Большое спасибо всем, кто помогает мне и остальным решать такие вот задачки.
Не забываем нажимать палец вверх, это стимулирует авторов к написанию других статей.
Краснодар, Россия
На форуме: newz20