В этом руководстве будет показано, как автоматически создавать резервные копии баз данных MySQL с помощью сценария Bash, шаг за шагом.
Как автоматически сделать резервную копию базы данных MySQL с помощью сценария Bash?
Создайте сценарий Bash для резервного копирования базы данных MySQL. Во-первых, откройте терминал, создайте каталог и перейдите в него, введя следующие команды:
mkdir mysqlbackup
cd mysqlbackup/
Вывод показывает, что вы успешно перешли в каталог:
Создайте bash-скрипт с именем « резервная копия.ш ” с помощью любого редактора, для этого поста используется редактор nano:
нано бекап.ш
Скрипт bash создаст:
Укажите учетные данные MySQL и имя базы данных, резервную копию которой вы хотите создать:
DB_USER='имя пользователя'DB_PASS='пароль'
DB_
Установите каталог резервного копирования « BACKUP_DIR », указав место, где должен быть сохранен файл резервной копии:
BACKUP_DIR='/path/to/your/backup/directory'Установите формат даты для имени файла резервной копии:
ДАТА=$(дата +'%Y-%m-%d_%H-%M-%S')Используйте эту команду mysqldump с учетными данными базы данных MySQL, чтобы создать файл резервной копии SQL:
mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sqlЧтобы сжать файл резервной копии SQL с помощью инструмента gzip, используйте эту команду:
gzip $BACKUP_DIR/$DB_NAME-$DATE.sqlЧтобы сэкономить место на диске, удалите старые файлы резервных копий через определенный период времени, за этот период « 7 Файл резервной копии старой версии будет удален с помощью этой команды:
найти $BACKUP_DIR -type f -name '*.gz' -mtime +7 -deleteСохраните файл и выйдите из редактора nano, нажав « CTRL+Х ” ключи:
Измените разрешения сценария bash на исполняемый, выполнив эту команду:
chmod +x backup.shБезошибочный вывод означает успешное выполнение команды:
Запустите скрипт с помощью этой команды bash:
sudo bash backup.shВведите пароль Ubuntu и используйте « лс », чтобы проверить, создан ли файл резервной копии:
Файл резервной копии успешно создан с помощью сценария bash. Теперь, чтобы автоматизировать процесс резервного копирования с помощью « хрон Утилита планировщика заданий. Чтобы отправить новое задание cron, используйте « -Это ” вариант с crontab:
кронтаб -еУстановите время для автоматического запуска скрипта bash. Для этого поста « 2 ЧАСА НОЧИ ” выбран для автоматического запуска скрипта:
0 2 * * * /путь/к/backup_mysql.shСохраните и выйдите из файла:
Давайте посмотрим на другую команду, если вы хотите делать резервную копию базы данных после каждого « 5 минут » введите это и сохраните файл:
*/5 * * * * /path/to/backup_mysql.shДля успешного создания задания crontab потребуется некоторое время:
Проверьте каталог на наличие файлов резервных копий, которые автоматически создаются после « 2 ЧАСА НОЧИ ', используя ' лс команда:
Файлы резервных копий базы данных MySQL создаются автоматически с помощью сценария bash и утилиты cron.
Заключение
Создайте сценарий bash, указав учетные данные MySQL и имя базы данных, резервную копию которой вы хотите создать, и формат имени файла. Используйте команду mysqldump для создания резервного файла SQL, gzip для его сжатия и запуска сценария. Используйте crontab, чтобы сделать процесс резервного копирования автоматическим. В этом посте обсуждалось, как автоматически создавать резервные копии базы данных MySQL с помощью сценария Bash.