[message_box title=”目录” color=”yellow”]
[/message_box]
经历过多次数据丢失的情况,真是心痛的要命。痛定思痛开始寻找如何每天定时备份数据内容,功夫不负有心人被我找到了,虽然应用过程中除了写小差错,但最终还是实现了目标。本文附带的脚本不是我原创的,是根据网上一个不知名的高手编写的脚本修改而来,可以实现将数据库定时备份并上传至FTP服务器。
关键字: mysql自动备份 ,VPS自动备份 ,数据库自动备份 ,MySQL自动备份脚本
问题延伸
- linux服务器自动备份数据
- mysql自动备份脚本
- 数据库定时备份
脚本内容
将下列文字保存为mysql.sh
#!/bin/bash MYSQL_USER= #数据库用户名 MYSQL_PASS= #数据库密码 FTP_USER= #FTP用户名 FTP_PASS= #FTP密码 FTP_IP= #FTP地址 FTP_backup= #备份目录 DataBakName=Data_$(date +"%Y%m%d").tar.gz OldData=Data_$(date -d -5day +"%Y%m%d").tar.gz rm -rf /opt/Data_$(date -d -3day +"%Y%m%d").tar.gz /opt/Web_$(date -d -3day +"%Y%m%d").tar.gz cd /opt for db in `/usr/bin/mysql -u$MYSQL_USER -p$MYSQL_PASS -B -N -e 'SHOW DATABASES' | xargs`; do (/usr/bin/mysqldump -u$MYSQL_USER -p$MYSQL_PASS ${db} | gzip > ${db}.sql.gz) done tar zcf /opt/$DataBakName /opt/*.sql.gz rm -rf /opt/*.sql.gz ftp -v -n $FTP_IP << END user $FTP_USER $FTP_PASS type binary cd $FTP_backup delete $OldData put $DataBakName bye END
定时执行脚本
编辑/etc/crontab
vi /etc/crontab
在里面加入如下内容
00 00 * * * /opt/mysql.sh
脚本下载
你也可以直接下载脚本:mysql.zip
鸣谢:
脚本内容基于http://www.vmvps.com/vps-auto-backup-data-to-ftp-disk.html修改
版权所有©艾克斯记事-转载文章请注明出处(带链接)
Pingback: 我选择虚拟主机的经历 | 网家
Pingback: Linux下通过rsync+ssh镜像备份 | 网家