Skip to main content

Script - MySQL Dump Databases Separated by DB Name

#!/bin/bash

DUMP_EXEC="mysqldump" #path to mysqldump MYSQL_EXEC="mysql" #path to mysql

MYSQL_USER="root" #db user MYSQL_PASSWORD="" #db password

databases="$MYSQL_EXEC -u$MYSQL_USER" if [ "$MYSQL_PASSWORD" ]; then databases="$databases -p$MYSQL_PASSWORD" fi databases="$databases -e 'show databases'"

eval $databases | while read dbname do if [ "$dbname" ]; then echo "Dumping database: $dbname" do `eval "$DUMP_EXEC --max_allowed_packet=1G -urootu$MYSQL_USER --complete-insert '$dbname' > '$dbname.sql'"` fi done