LFCS Подготовка к сертификации
📌 Главное
Мини-скрипт backup_mysql.sh
задаём переменные MYSQL_USER/PASS/HOST, каталог BACKUP_DIR, массив DATABASES=(db1 db2 …);
для каждой базы запускаем mysqldump, именуя файлы по дате — db_YYYY-MM-DD_HH-MM-SS.sql;
в конце скрипт удаляет дампы старше 30 дней командой find … -mtime +30 -exec rm.
Права и тест:
сделать исполняемым:
chmod +x backup_mysql.sh;запустить вручную и проверить, что файлы создались.
Автоматизация через Cron
открыть crontab -e;
строка 0 2 * * * /bin/bash /path/backup_mysql.sh — ежедневный бэкап в 02:00;
лог Cron’а проверяется через grep CRON /var/log/syslog.
Советы по безопасности и хранению
вместо пароля в скрипте — использовать ~/.my.cnf;
контролировать свободное место каталога и при необходимости писать на внешний носитель или в облако;
адаптировать периодичность Cron под частоту изменений данных.
Итог: за несколько строк Bash и одну запись в Cron вы получаете регулярные, датированные дампы MySQL без ручных действий и с авто-очисткой старых файлов.
https://www.tecmint.com/bash-script-for-mysql-backup/
