为了应对意外,备份数据库是非常必须的。备份脚本怎么写呢?
在写脚本之前,先假设mysql的bin目录是:/usr/local/mysql/bin/
PATH=$PATH:$HOME/bin #备份目录 BackupPath="/home/mysql/backup" #备份文件名 BackupFile="dbbackup"$(date +%y%m%d_%H)".sql" #数据库的用户名及密码 user="root" passwd="Welcome@123" #检查备份目录是否存在 if !(test -d $BackupPath) then mkdir $BackupPath fi #使用mysql提供的mysqldump备份脚本 /usr/local/mysql/bin/mysqldump -u$user -p$passwd --allow-keywords --default-character-set=utf8 --set-charset -R -A --master-data=2 >"$BackupPath"/"$BackupFile" #删除三个月前的备份文件 find "$BackupPath" -name "dbbackup*[log,sql]" -type f -mtime +3 -exec rm -rf {} \;
将上面的脚本保存为.backup.sh 加入到 crontab 中即可。具体怎么加到计划任务,请参阅我以前的文章:Linux下,nginx如何切割访问日志?和Linux crontab命令小解