Упаковывает файлы каждого сайта в zip архив, создает mysql дамп, добавляет его к архиву и загружает архив с файлами и дампом на Я.Диск.
На Я.Диске файлы сохраняются в специальной папке
Приложения/_Имя_приложения_
- это имя, которое вы указали в названии приложения в Yandex Oauth. Папка приложения создается автоматически при первой загрузке файла.
Все бэкапы раскладываются в отдельные папки для каждого сайта. Каждый бэкап содержит в имени метку времени по UTC.
Зарегистрируйте приложение и получите токен в oauth.yandex.ru/.
Для работы скрипта достаточно следующих привилегий:
- Доступ к информации о Диске
- Доступ к папке приложения на Диске
1.Склонируйте репозиторий
git clone https://github.com/zillingen/YandexDiskBackup.git
2.Создайте пользователя в MySQL
Создайте пользователя с правами только на чтение баз данных, которые вы хотите бэкапить:
CREATE USER 'backup_user'@'localhost' IDENTIFIED BY 'secret';
GRANT SELECT, SHOW VIEW, LOCK TABLES, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER ON *.* TO 'backup_user'@'localhost';
3.Настройте скрипт
Скопируйте файл config.dist.php
в config.php
и измените в нем параметры сайтов, введите токен и логин/пароль пользователя MySQL
4.Создавайте бэкапы
php YandexDiskBackup.php