Това ръководство ще демонстрира как автоматично да архивирате MySQL бази данни с помощта на Bash скрипт, стъпка по стъпка.
Как автоматично да архивирате MySQL база данни с помощта на Bash скрипт?
Създайте Bash скрипт за архивиране на MySQL базата данни. Първо отворете терминала, създайте директория и отидете до директорията, като въведете тези команди:
mkdir mysqlbackup
cd mysqlbackup/
Изходът показва, че успешно сте навигирали до директорията:
Създайте bash скрипт с име „ backup.sh ” използвайки произволен редактор, за тази публикация се използва нано редактор:
nano backup.sh
Скриптът bash ще създаде:
Предоставете идентификационните данни на MySQL и името на базата данни, която искате да архивирате:
DB_USER='потребителско име'DB_PASS='парола'
DB_
Задайте директорията за архивиране ' BACKUP_DIR ”, като предоставите местоположението, където архивният файл трябва да бъде запазен:
BACKUP_DIR='/път/към/вашата/резервна/директория'Задайте формата на датата за името на архивния файл:
ДАТА=$(дата +'%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 -тип f -име '*.gz' -mtime +7 -изтриванеЗапазете файла и излезте от нано редактора, като натиснете „ CTRL + X ” ключове:
Променете разрешенията на bash скрипта на изпълним, като изпълните тази команда:
chmod +x backup.shИзходът без грешки означава, че изпълнението на командата е успешно:
Стартирайте скрипта, като използвате тази команда bash:
sudo bash backup.shВъведете паролата на Ubuntu и използвайте „ ls ”, за да проверите дали архивният файл е създаден или не:
Архивният файл е създаден успешно с помощта на bash скрипта. Сега, за да автоматизирате процеса на архивиране, като използвате „ cron ” помощна програма за планиране на задачи. За да изпратите нова cron задача, използвайте „ -То е ” опция с crontab:
crontab -еЗадайте времето за автоматично изпълнение на bash скрипта. За тази публикация, „ 2 СУТРИНТА ” е избрано за автоматично изпълнение на скрипта:
0 2 * * * /path/to/backup_mysql.shЗапазете и излезте от файла:
Нека да видим друга команда, ако искате да архивирате вашата база данни след всеки ' 5 минути ” въведете това и запазете файла:
*/5 * * * * /path/to/backup_mysql.shCrontab ще отнеме известно време, за да създаде успешно заданието:
Проверете директорията за архивни файлове, които се създават автоматично след „ 2 СУТРИНТА ', използвайки ' ls ” команда:
Файловете за архивиране на базата данни на MySQL се създават автоматично с помощта на скрипта bash и помощната програма cron.
Заключение
Създайте bash скрипт, като предоставите идентификационни данни за MySQL и името на базата данни, която искате да архивирате, и формата на името на файла. Използвайте командата mysqldump за създаване на резервен SQL файл, gzip за компресиране и стартирайте скрипта. Използвайте crontab, за да направите процеса на архивиране автоматичен. Тази публикация обсъди как автоматично да архивирате MySQL база данни с помощта на Bash скрипт.