vps定时备份数据库命令,将下面的代码保存为backsql.sh,然后设置定时任务运行即可。
cd /home/admin/backup #切换到备份目录
btimes=$(date +%y%m%d%H%M) #定义备份时间
agobtimes=$(date -d -7day +%y%m%d%H%M) #定义删除七天前的备份
rm -rf allsql/vps_all_db_$agobtimes.tar.gz #删除操作
for db in `/usr/bin/mysql --user="root" --password="123456" -B -N -e 'SHOW DATABASES' | xargs`
do
(/usr/bin/mysqldump --user="root" --password="123456" ${db} | /bin/gzip -9 - > allsql/${db}.sql.gz)
done #遍列所有数据库并单个打包
tar -zcf allsql/vps7_all_db_$btimes.tar.gz allsql/*.sql.gz #打包所有数据库为一个压缩包
mysqlcheck -Aao --auto-repair --user="root" --password="123456" #修复表
echo "vps_all_db_$btimes.tar.gz" | mutt 631992791@qq.com -a /home/admin/backupftp/allsql/vps_all_db_$btimes.tar.gz -s "vps_all_db_$btimes.tar.gz" #发送备份到邮箱
rm -rf allsql/*.sql.gz #删除单个数据库备份文件
下面为定时备份网站文件发送到FTP命令,将下面的代码保存为backweb.sh,然后设置定时任务运行即可。
cd /home/admin/backup mkdir webfile btime=$(date +%y%m%d%H%M) agobtime=$(date -d -7day +%y%m%d%H%M) tar -cvf webfile/vps_web_$btime.tar /home/admin/domains bzip2 -z -9 -f webfile/vps_web_$btime.tar cd webfile ftp -v -n 127.0.0.1 << END user ftpuser password type binary cd webbackup put vps_web_$btime.tar.bz2 delete vps_web_$agobtime.tar.bz2 bye END cd .. rm -r webfile