34 lines
691 B
Text
34 lines
691 B
Text
#!/bin/sh
|
|
|
|
DESTDIR="<%= @mysql_backup_datadir %>"
|
|
MAXAGE="<%= @mysql_backup_maxage %>"
|
|
|
|
DATE=`date "+%Y-%m-%d"`
|
|
HOME="`getent passwd ${USER} | cut -d : -f 6`"
|
|
OPTS=""
|
|
|
|
if [ ! -d ${DESTDIR} ]; then
|
|
echo "ERR: MySQL backup directory [${DESTDIR}] does not exist" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
umask 077
|
|
|
|
tmpwatch -m -f ${MAXAGE} ${DESTDIR}
|
|
|
|
mysqldump -E > /dev/null 2>&1
|
|
if [ $? -ne 2 ]; then
|
|
OPTS="${OPTS} -E"
|
|
fi
|
|
|
|
DESTDIR=${DESTDIR}/${DATE}
|
|
mkdir -p ${DESTDIR}
|
|
|
|
for db in `mysql -e 'show databases' -s` ; do
|
|
case ${db} in
|
|
Database|information_schema)
|
|
continue
|
|
;;
|
|
esac
|
|
mysqldump --add-drop-table ${OPTS} ${db} | gzip > ${DESTDIR}/${db}.${DATE}.gz
|
|
done
|