--- automysqlbackup.sh 2013-04-16 18:03:29.000000000 +0200 +++ /usr/sbin/automysqlbackup 2014-05-09 22:14:04.934737191 +0200 @@ -31,7 +31,7 @@ DEBUG=no -CONFIGFILE="automysqlbackup.conf" +CONFIGFILE="/etc/default/automysqlbackup" if [ -r $HOME/${CONFIGFILE} ]; then CONFIGFILE="$HOME/automysqlbackup.conf"; @@ -48,10 +48,10 @@ # (copy a new version to its location) without the need for editing it. ### START CFG ### # Username to access the MySQL server e.g. dbuser - USERNAME=root + #USERNAME=root # Password to access the MySQL server e.g. password - PASSWORD='P@ssw0rd' + #PASSWORD='P@ssw0rd' # Host name (or IP address) of MySQL server e.g localhost DBHOST=192.168.1.1 @@ -558,7 +558,7 @@ BACKUPFILES="" KEEPMON="+"$(($KEEPMON*31+2)) KEEPWEK="+"$(($KEEPWEK*7+2)) -OPT="--quote-names --opt -R --master-data=2 --single-transaction" # OPT string for use with mysqldump ( see man mysqldump ) +OPT="--quote-names --opt -R --single-transaction" # OPT string for use with mysqldump ( see man mysqldump ) # Add HOSTNAME to BACKUPDIR if desired if [ "${BYHOSTNAME}" = "yes" ]; @@ -637,7 +637,12 @@ # Prepare ${1} for using '.' (table) name DDB="`${ECHO} ${1} | ${SED} 's/\./ /g'`" - ${MYSQLDUMP} --user=${USERNAME} --password=${PASSWORD} --host=${DBHOST} ${OPT} ${DDB} > ${2} + if [ -z "${USERNAME}" -o -z "${PASSWORD}" ] ; then + ${MYSQLDUMP} --defaults-file=/etc/mysql/debian.cnf $NEWOPT ${OPT} ${DDB} > $2 + else + ${MYSQLDUMP} --user=${USERNAME} --password=${PASSWORD} --host=${DBHOST} ${OPT} ${DDB} > ${2} + fi + ${CHMOD} 600 ${2} if [ "${CRYPTPAS}" ]; then @@ -731,13 +736,19 @@ # Backup MySQL config file (my.cnf) if so directed. if [ "$MYCNF" = "yes" ]; then echo "Backup of all MySQL configuration file, /etc/my.cnf" - cp /etc/my.cnf ${BACKUPDIR}/my.cnf_$DATE + cp $MYCNFPATH/my.cnf ${BACKUPDIR}/my.cnf_$DATE fi # Backup full schema if so directed. if [ "$FULLSCHEMA" = "yes" ]; then echo "Backup of all database schemas" - ${MYSQLDUMP} --user=$USERNAME --password=$PASSWORD --host=$DBHOST --all-databases --routines --no-data > ${BACKUPDIR}/schema_$DATE.sql + + if [ -z "${USERNAME}" -o -z "${PASSWORD}" ] ; then + ${MYSQLDUMP} --defaults-file=/etc/mysql/debian.cnf --all-databases --routines --no-data > ${BACKUPDIR}/schema_$DATE.sql + else + ${MYSQLDUMP} --user=$USERNAME --password=$PASSWORD --host=$DBHOST --all-databases --routines --no-data > ${BACKUPDIR}/schema_$DATE.sql + fi + ${CHMOD} 600 ${BACKUPDIR}/schema_$DATE.sql fi