TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #1237 7.56K
​​Делюсь с вами простым и удобным скриптом для автоматического бэкапа mysql баз с помощью mysqldump - AutoMySQLBackup. Это обычный bash скрипт, который упрощает рутинные задачи по бэкапу, предлагая встроенный функционал.

https://github.com/sixhop/AutoMySQLBackup

Основные возможности скрипта:
▪ Сжимает бэкапы баз и раскладывает их по отдельным директориям.
▪ Поддерживает многопоточные архиваторы типа pigz, позволяет управлять количеством потоков.
▪ Автоматически ротирует дневные, недельные, месячные архивы по заданным параметрам.
▪ Позволяет использовать ключи mysqldump.
▪ Умеет хранить настройки в отдельном конфигурационном файле.
▪ Можно гибко управлять набором баз для бэкапа, вручную указывая их или управляя списком с помощью шаблонов.
▪ Умеет отправлять результаты своей работы по почте.
▪ Может шифровать дампы указанным ключом.
▪ Запуск своего скрипта до или после выполнения бэкапа.

Вот простой конфиг для ежедневного бэкапа баз mysql за исключением performance_schema и information_schema. Ежедневные бэкапы хранятся 7 дней, недельные 31 день, месячные год.

CONFIG_mysql_dump_username='root'
CONFIG_mysql_dump_password='parol'
CONFIG_mysql_dump_host='localhost'
CONFIG_backup_dir='/mnt/backup'
CONFIG_multicore='no'
CONFIG_db_names=()
CONFIG_db_exclude=( 'performance_schema' 'information_schema' )
CONFIG_db_exclude_pattern=()
CONFIG_do_monthly='01'
CONFIG_do_weekly='7'
CONFIG_rotation_daily=6
CONFIG_rotation_weekly=31
CONFIG_rotation_monthly=360

После работы сккрипта в директории /mnt/backup будет создана структура директорий:

◽ daily - ежедневные бэкапы, где каждая база будет в своей директории;
◽ fullschema - только структура всех баз данных;
◽ latest  - если указать соответствующую настройку, то в этой директории всегда будут лежать бэкапы от последнего запуска. Удобно отсюда их забирать куда-то в другое место сразу после окончания бэкапа.
◽ monthly - месячные бэкапы;
◽ status - список баз каждого запущенного бэкапа;
◽ tmp - для временных файлов;
◽ weekly - недельные бэкапы;

Рекомендую так же прочитать мою заметку про выбор параметров для mysqldump. Там есть важные моменты, которые влияют на успешность создания дампа.

#bash #mysql #backup
  • 👍 2
More from @srv_admin
  1. Oct 14, 2026Что будет, если убрать репликацию с диска?☁️ В K2 Cloud проверили и запустили сетевые нере…
  2. Oct 14, 2026Рассказываю про небольшой трюк, который я лично на днях проделал для решения небольшой зад…
  3. Oct 12, 2026Вот мы и вступили в новую реальность, когда стали пропадать датацентры целиком, что повлек…
  4. Oct 12, 2026💻Практический вебинар «СТРАТЕГИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ» 📹 15 октября в 11:00 Мск за 90…
  5. Oct 10, 2026Когда я работал в одной небедной компании, там регулярно обновляли парк оборудования, а ст…
  6. Oct 9, 2026▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересны…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →