Exportar e Importar todos os bancos do MySQL. Export and Import all MySQL databases at one time

Abaixo segue um script para exportar todos os bancos do mysql, ele lista os bancos e faz um dump de cada banco em um arquivo diferente.

#!/bin/bash
USER="root"
PASSWORD="yourpassword"
#OUTPUT="/backup/mysql"
#rm "$OUTPUTDIR/*gz" > /dev/null 2>&1

databases=`mysql -u $USER -p$PASSWORD -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`

for db in $databases; do
    if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "mysql" ]] && [[ "$db" != _* ]] ; then
        echo "Dumping database: $db"
        mysqldump -u $USER -p$PASSWORD --databases $db > `date +%Y%m%d`.$db.sql
       # gzip $OUTPUT/`date +%Y%m%d`.$db.sql
    fi
done

O script irá gerar um arquivo dump para cada banco.
Para importar um banco, é necessário criar ele e depois importar.

mysql -u root -p nomedobanco < nomedobanco.sql

Comando para exportar por dump todos os bancos do mysql em um arquivo só:

mysqldump -uroot -p --all-databases --skip-lock-tables > alldb.sql

Para importar todos os bancos contidos no mesmo arquivo:

mysql -u root -p < alldb.sql