Для создания бекапа всех баз сразу Вы можете воспользоваться 2 разными способами представленными ниже.
Все базы данных MySQL в один файл
Простая команда, которая запишет все файлы в один файл:
# mysqldump -u root -p —all-databases > all_dbs.sql
Все базы данных MySQL в разные файлы
SH скрипт который создаст для каждой базы отдельный файл:
#! /bin/bash
TIMESTAMP=$(date +»%F»)
BACKUP_DIR=»/backup/$TIMESTAMP»
MYSQL_USER=»backup»
MYSQL=/usr/bin/mysql
MYSQL_PASSWORD=»password»
MYSQLDUMP=/usr/bin/mysqldumpmkdir -p «$BACKUP_DIR/mysql»
databases=`$MYSQL —user=$MYSQL_USER -p$MYSQL_PASSWORD -e «SHOW DATABASES;» | grep -Ev «(Database|information_schema|performance_schema)»`
for db in $databases; do
$MYSQLDUMP —force —opt —user=$MYSQL_USER -p$MYSQL_PASSWORD —databases $db | gzip > «$BACKUP_DIR/mysql/$db.gz»
done