projects
/
matthijs
/
upstream
/
backupninja-vserver.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added patch to mysql handler from Daniel.Bonniot@inria.fr
[matthijs/upstream/backupninja-vserver.git]
/
handlers
/
mysql
diff --git
a/handlers/mysql
b/handlers/mysql
index e5306db4c5a42adafcafeb87e31f29f24c163328..57b9ecfe52b2fb695279f8816ed4c77c83d5c080 100644
(file)
--- a/
handlers/mysql
+++ b/
handlers/mysql
@@
-4,6
+4,7
@@
getconf backupdir /var/backups/mysql
getconf databases all
getconf backupdir /var/backups/mysql
getconf databases all
+getconf ignores
getconf dbhost localhost
getconf hotcopy no
getconf sqldump no
getconf dbhost localhost
getconf hotcopy no
getconf sqldump no
@@
-25,6
+26,14
@@
else
[ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf"
fi
[ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf"
fi
+## Prepare ignore part of the command
+## This only works for mysqldump at the moment
+
+ignore=''
+for i in $ignores; do
+ ignore="$ignore --ignore-table=$i"
+done
+
# If vservers are configured, decide if the handler should
# use them or if it should just operate on the host
# If vservers are configured, decide if the handler should
# use them or if it should just operate on the host
@@
-42,13
+51,13
@@
fi
# If needed, make sure that the specified vserver exists and is running.
if [ $usevserver ]
then
# If needed, make sure that the specified vserver exists and is running.
if [ $usevserver ]
then
-
info "examining vserver '$vsname'"
-
# does it exist ?
+ info "examining vserver '$vsname'"
+ # does it exist ?
vroot="$VROOTDIR/$vsname"
[ -d $vroot ] || fatal "vserver '$vsname' does not exist at '$vroot'"
vroot="$VROOTDIR/$vsname"
[ -d $vroot ] || fatal "vserver '$vsname' does not exist at '$vroot'"
-
# is it running ?
-
running=`$VSERVERINFO $vsname RUNNING`
-
[ $running = 1 ] || fatal "vserver $vsname is not running."
+ # is it running ?
+ running=`$VSERVERINFO $vsname RUNNING`
+ [ $running = 1 ] || fatal "vserver $vsname is not running."
fi
# create backup dirs, the vroot variable will be empty if no vsname was specified
fi
# create backup dirs, the vroot variable will be empty if no vsname was specified
@@
-181,9
+190,9
@@
if [ "$sqldump" == "yes" ]; then
for db in $databases; do
if [ $usevserver ]
then
for db in $databases; do
if [ $usevserver ]
then
- execstr="$VSERVER $vsname exec $MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $db > $vroot$dumpdir/${db}.sql"
+ execstr="$VSERVER $vsname exec $MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $
ignore $
db > $vroot$dumpdir/${db}.sql"
else
else
- execstr="$MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $db > $dumpdir/${db}.sql"
+ execstr="$MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $
ignore $
db > $dumpdir/${db}.sql"
fi
debug "su $user -c '$execstr'"
if [ ! $test ]; then
fi
debug "su $user -c '$execstr'"
if [ ! $test ]; then