Project

General

Profile

MySQLMaintenanceScripts » mysqldump-tables.sh

Andreas Kohlbecker, 02/12/2010 12:12 PM

 
1
#!/bin/sh
2

    
3
#####################################################
4
#                EDIT THESE SETTING                 #
5

    
6
BACKUPDIR="db_export";
7

    
8
DATABASE="drupal_dataportal"
9

    
10
# the pattern to search for. eg: "my_site_%"
11
TABLEPATTERN="cdm_cichorieae_node_%";
12

    
13
####################################################
14

    
15

    
16
MYSQLDUMP="$(which mysqldump)";
17
DATEPREFIX="$(date +%Y-%m-%d_%H-%M-%S)";
18
FILENAME_FPART="$(echo $TABLEPATTERN | sed 's/%//g')";
19
FILENAME="${DATEPREFIX}_${DATABASE}.${FILENAME_FPART}.sql.gz";
20

    
21
MYSQL=$(which mysql);
22
#TAR=$(which tar);
23
GZIP=$(which gzip);
24
#NICE=$(which nice);
25
#EGREP=$(which egrep);
26

    
27
echo "will dump all tables matching $TABLEPATTERN from $DATABASE into $FILENAME";
28
read -p "mysql user:" MYSQL_USR;
29
read -s -p "mysql password:" MYSQL_PWD;
30

    
31
mkdir -p "$BACKUPDIR";
32
#echo $MYSQL -u $MYSQL_USR --password="$MYSQL_PWD" -Bse "show tables from $DATABASE LIKE '$TABLEPATTERN'";
33

    
34
TNS=$($MYSQL -u $MYSQL_USR --password="$MYSQL_PWD" -Bse "show tables from $DATABASE LIKE '$TABLEPATTERN'");
35
echo "\ntables:$TNS"
36

    
37
$MYSQLDUMP -u $MYSQL_USR --password="$MYSQL_PWD" --single-transaction $DATABASE $TNS | $GZIP -c > "$BACKUPDIR/$FILENAME";
(2-2/3)