Backup + cron + mail

create a use with read-only rights
sudo useradd -r -s /bin/false USERNAME

create this user in db
grant select on database_name.* to 'USERNAME'@'%' identified by 'password';

create with date in body and address for backup
mysqldump --single-transaction -u root -ppassword --databases databaze_name > /home/to/backup.sql && echo "db backup from database $(date) " | mutt -a "/path/to/backup.sql" -s "db backup" -- name@hostname
note here that between -p parameter and actual password is not space!

set up cron for once a week on sunday midnight
crontab -e

type cron taks
0 0 * * 0 /path/to/
!under debian has all users privilege to run cron task, may wary on different OS