MySql: mysqldump-dbfilter.sh

File mysqldump-dbfilter.sh, 0.5 kB (added by a.kohlbecker, 2 years ago)
Line 
1#!/bin/sh
2BACKUPDIR="/backups/db";
3DBFILTER="(information_schema|dev|tmp)";
4MYSQLDUMP="$(which mysqldump) --opt";
5DIRNAME=`date +%Y-%m`;
6 
7MYSQL=$(which mysql);
8TAR=$(which tar);
9GZIP=$(which gzip);
10NICE=$(which nice);
11EGREP=$(which egrep);
12 
13mkdir -p "$BACKUPDIR/$DIRNAME";
14 
15DBS=$($MYSQL -Bse "show databases");
16for db in $DBS
17do
18    if !(echo $db | $EGREP $DBFILTER > /dev/null);
19    then
20        FILENAME="$db-`date +%Y_%m_%d_%H_%M_%S`.sql.gz";
21$NICE -n 20 $MYSQLDUMP $db | $NICE -n 20 $GZIP -c > "$BACKUPDIR/$DIRNAME/$FILENAME";
22    fi
23done