建立备份脚本,通过crontab定期执行即可实现自动备份
#!/bin/bash
mkdir tmp
rq=`date +%Y%m%d%H%M%S`
mysqldump --opt -ujira -pjira jira | gzip > jira$rq.sql.gz
mv `ls -t *.gz -t|head -6` tmp/.
rm -f *.gz
mv tmp/* .
rmdir tmp
mkdir tmp行用于建立临时目录,以实现只保留最后6个备份的目的;
rq=`date +%Y%m%d%H%M%S`行用于产生当前日期时间字符串,以拼接到文件名中;
mysqldump --opt -utest -ptest test | gzip > test$rq.sql.gz行用于将数据导出并压缩存储,--opt设置了导出的选项,-u设定导出时所使用的帐号,-p设定密码,test为待导出的 数据库,通过管道使用gzip压缩,数据文件存储名字为testXXXXX.sqk.gz,其中XXXXXX为当前的日期时间字符串;
mv `ls *.gz -t|head -6` tmp/. 行将当前目录下的.gz文件,取出前6个移动到临时目录中
rm -f *.gz 行删除多余的文件
mv tmp/* .行将临时目录中的目录移回
rmdir tmp行删除临时目录
该备份脚本将导出的sql压缩后保存于当前目录下
恢复时将数据包解压缩,将其作为mysql命令的输入即可恢复数据库。