本身日常用的一个shell脚本,起自动备份mysql中全部数据库做用,在任务执行完成后,会记录日志和自动发送邮件到邮箱。mysql
配合crontab能够实现天天自动备份。web
backmysql.sh:sql
#!/bin/bash #日期格式 file=`date +%Y-%m-%d_%H:%M:%S` #文件目录 filedir=/root/mysqlautobackup/ #记录开始时间 start=`date +%Y-%m-%d_%H:%M:%S` echo -e "开始执行备份:$start" >> $filedir/auto_backup.log #数据库信息 name="root" pawd="数据库密码" #执行备份 /root/webserver/mysql/bin/mysqldump --all-databases -u$name -p$pawd > $filedir/mysql$file.sql if [ $? -eq 0 ] then #记录结束时间 end=`date +%Y-%m-%d_%H:%M:%S` echo -e "结束执行备份:$end\n" >> $filedir/auto_backup.log #发送通知邮件 echo -e "数据库备份完成!\n开始时间:$start\n结束时间:$end" | /bin/mail -s "MySQL备份通知" aahanzi@163.com fi
crontab -e :shell
30 1 * * * /root/backmysql.sh
内容:数据库
开始执行备份:2016-11-30_14:35:39 结束执行备份:2016-11-30_14:37:09