Skip to content

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

angryjack/backup-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

backup-engine

Система для создания автоматических бекапов файлов с дальнейшей выгрузкой их на Яндекс Диск

Установка

Через Composer

$ composer require angryjack/backup-engine

Использование

Инициализация:
use Angryjack\BackupEngine\Backup;

// подключаем автозагрузчик
require __DIR__ . '/vendor/autoload.php';

// рабочая дирректория с файлами которые требуется сохранять
$workPath = '/home/user/files';

// папка бекапов на яндекс диске
$backupPath = '/backups';

// токен яндекс диска
$oauth = '';

$backup = new Backup($workPath, $backupPath, $oauth);
Изменение директорий:
// устанавливаем(изменяем) рабочую директорию
$backup->setWorkPath('/home/user/files');

// устанавливаем(изменяем) директорию для резервного копирования
$backup->setBackupPath('/backups');
Резервное копирование файлов:
// метод files первым параметром принимает регулярное выражение
// указывается какие файлы необходимо копировать
$pattern = '/^_.*sql.gz\z/';

// Удалять файлы после заругзки на яндекс диск (По умолчанию false)
$deleteAfterBackup = false;

$backup->files($pattern, $deleteAfterBackup);
Резервное копирование папок:
// метод folders первым параметром принимает регулярное выражение
// указывается какие папки необходимо копировать
$pattern = '/^[^\.]/';

// в отличие от метода files, метод folders создает архив zip архив копируемой папки
// Удалять созданный архив после заругзки на яндекс диск (По умолчанию true)
$deleteAfterBackup = true;

$backup->folders($pattern, $deleteAfterBackup);

Рекомендации по использованию

Использовать последнюю версию php. Замеры показали, что создание архивов используя php7.2 выполняется ~6 раз быстрее по сравнению с php5.6

Инструкция по созданию токена OAUTH

  1. Создать новое приложение
  2. При регистрации или редактировании приложения, нажмите ссылку Подставить URL для разработки в поле Платформы → Веб-сервисы → Callback URI.
  3. Перейдите по ссылке следующего вида:
https://oauth.yandex.ru/authorize?response_type=token&client_id=<идентификатор приложения>
  1. На открывшейся странице нажмите кнопку Подтвердить, чтобы разрешить доступ к аккаунту. Разрешать доступ не потребуется, если для данного приложения уже был выдан токен, и срок его жизни еще не истек.

Подробная инструкция по созданию токена доступка по ссылке: OAuth в Яндексе

About

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

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages