TinySQL

Чтобы не захламлять сервер бэкапами трехсотлетней давности не обязательно писать свои скрипты. Для этой цели отлично подойдет системный logrotate, - умная и гибкая в настройках утилита. На приведенном ниже примере я покажу как заставить срвер делать ежедневные дампы-бэкапы MySQL баз с лимитом по количеству в 8 штук. То есть, у вас будут данные ваших БД за последние 8 дней.

Простое решение

для небольших сайтов

  • 100% переносимость
  • Простой интерфейс
  • Скорость ограничена только возможностями HDD
  • API для тех, кто желает разнести UI и ServerSide (в разработке)

Ротирование с помощью Logrotate

Чтобы не захламлять сервер бэкапами трехсотлетней давности не обязательно писать свои скрипты. Для этой цели отлично подойдет системный logrotate, - умная и гибкая в настройках утилита. На приведенном ниже примере я покажу как заставить срвер делать ежедневные дампы-бэкапы MySQL баз с лимитом по количеству в 8 штук. То есть, у вас будут данные ваших БД за последние 8 дней.

Для полноценной работы утилиты вам потребуется пароль root от вашего MySQL сервера. Итак, создаем файл настройки вашего ротатора, где будут установлены лимит на количество бэкапов и собственно сама команда создания бэкапа баз: 

sudo nano /etc/logrotate.d/mysql-backup

/var/backup/db.sql.gz {
dailyrotate 8 nocompress
create 640 root adm
postrotatemysqldump -u root -pPassword --all-databases > /var/backup/db.sql --single-transaction
gzip -9f /var/backup/db.sqlendscript
}

2. Создадим первую пустышку бэкапа:

sudo touch /var/backup/db.sql.gz

И, наконец, проверим работоспособность - выполним эту команду:

sudo logrotate -f /etc/logrotate.d/mysql-backup

Профит.. )


Создание сайта и поддержка проекта - ООО "Сайт!"