1. 在/data/sh/db路径下新建定时备份脚本backup.sh: #!/bin/sh #备份文件名 backupPath=/opt/dbbackup backupFile=$backupPath/gou$(date +%Y%m%d).sql logFile=/data/log/backup.log now=`date '+%Y-%m-%d %T'` echo "$now begin to backup mysql..." >>$logFile echo $backupFile >>$logFile #mysql的用户名,密码,数据库名 username="root" password="hiker123server" dbname="travel_core" #检查备份目录是否存在 if !(test -d $backupPath) then mkdir $backupPath fi mysqldump -u$username -p$password $dbname > $backupFile cd $backupPath #删除10天前的备份文件 echo "delete backup sql file before 10 days" >>$logFile rm -rf `find . -name '*.sql' -mtime 10` echo "end to backup mysql" >>$logFile 2. 设置backup.sh的执行权限 #chmod +x backup.sh 3. 用crontab定时执行备份脚本代码 #vi /etc/crontab 添加cron 59 23 * * * root /data/sh/db/backup.sh #每天23:59分开始执行数据库备份 4. 重启crond # /etc/rc.d/init.d/crond restart