备份博客服务器的MySQL数据库 备份网站的资料 2021-7-13

需求描述
备份本博客网站的数据库,数据资料,备份频率1次/天,服务器源站位于美国,备份数据异地容灾,传输到中国一份,传输到日本服务器一份。
数据实现一主,两备份副本,即便主网站完全崩溃,可以实现,快速的数据恢复,网站重建。

博客网站的备份,分为两部分,数据库部分和网站文件部分。

备份脚本已上传Github,运行在源站服务器上

https://github.com/fdmove/BlockADS/blob/main/BackBlog.sh

预览

#!/bin/sh
# START
mkdir -p /root/sh /root/backup
v_date=`date '+%Y%m%d'`
DB_USER='root'
DB_PASS='DBPASS'
DB_NAME='DBNAME'
DB_HOST='127.0.0.1'

# 备份数据库
mysqldump -h ${DB_HOST} -u ${DB_USER} -p${DB_PASS} --databases ${DB_NAME} > /root/backup/Backup.myBlog.mysqldump.${v_date}.SQL

# 备份网站的文件
v_blog='dasmz.com'
cd /var/www/
tar -zcvf /root/backup/Backup.${v_blog}.${v_date}.tar.gz ${v_blog}

# 删除旧的备份
cd /root/backup
find . -name *.tar.gz -type f -ctime +90 -print | xargs rm 
find . -name *.SQL    -type f -ctime +90 -print | xargs rm

# END

备注1 依据服务器磁盘大小,选择保留的数据量

备注2 实际情况下,个人博客网站,一般一主一备就足够了,单体数据量全量和增量都比较小,不需要高密度备份

源站服务器,cron任务

# 备份数据库 和 网站的文件  20210713
10 0 * * * /root/sh/BackBlog.sh > /root/log/BackBlog.log

备份的文件在源站服务器生成后,可以用一些sync工具,定时同步到其他备份节点的磁盘上。

Donate
云乞讨

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注