> CentOS > CentOS运维 >

CentOS自动备份数据库和网站文件脚本

备份是保护数据安全的一项重要的技能。很多站长都会过一段时间,备份一次网站的数据库和网站的内容,以备数据受损时可以快速恢复相关内容。在此与大家分享一个备份脚本,并配合crond计划执行工具,让系统在规定时间自动执行备份操作。

新建备份目录/home/databackup
编辑一个备份脚本将其命名为webbackup.sh,内容如下:
#!/bin/bash
#远程FTP的连接信息
FTP_IP=
FTP_USER=
FTP_PASS=
#备份数据库
/etc/init.d/mysql stop  //为保证数据安全,在备份之前需停止运行数据库
cd /home/databackup         //进入备份目录
MySQLBakName=MySQL_$(date +"%Y%m%d").tar.gz
tar zcPf $MySQLBakName /usr/local/mysql/var //打包数据文件
/etc/init.d/mysql start  //打包完成后别忘了开启数据库
#操作FTP,并将本地文件传递到远程服务器
OldMySQL=MySQL_$(date -d -1day +"%Y%m%d").tar.gz
cd /home/databackup/
/usr/bin/ftp -v -n $FTP_IP << EOF
user $FTP_USER $FTP_PASS
type binary
cd mysql_backup
put $MySQLBakName
delete $OldMySQL
bye
EOF
rm -rf /home/databackup/*.tar*  //为了避免浪费存储空间,在数据备份完成后,将本地的多余文件删除。

通过配合上crond工具,让数据在指定的时间自动执行。


(责任编辑:IT)