WordPress备份方案和备份脚本

郑重承诺丨优站网提供安全交易、信息保真!
增值服务:
自动发货
网盘下载
安装指导
环境配置
二次开发
网站建设
¥ 0 (VIP免费升级VIP开通VIP尊享优惠特权
立即下载 升级会员 购买教程 售后支持
详情介绍

刚接触WordPress博客/网站的时候,完全没有备份的想法。博客重建已经不是什么大事了,反正没人看,东西也不多。工作之余,遇到网络攻击、运维失误、硬件故障等意外。对安全和备份的意识越来越强,对其重要性的认识上升到一个新的水平。

WordPress备份方案和备份脚本

WordPress备份方案和备份脚本
简要介绍了一些可行的WordPress备份方案,并给出了该网站目前使用的备份方案和脚本。只要稍加修改,备份脚本也可以应用于其他类型的网站。

WordPress备份方案
备份是复制一份或多份数据,防止发生意外时数据丢失,并通过备份尽快恢复服务。要做好WordPress备份服务,需要考虑以下几个方面:

备份位置
备份需要额外的存储空间来存储冗余数据,备份位置有几种选择:

同一服务器的不同分区。这种方法的优点是备份非常快,当网站挂有木马时可以快速恢复。缺点是如果服务器无法登录,那就没办法了。
在同一数据中心的不同服务器上。优点是避免了单服务器故障的问题同步快;缺点是需要额外的服务器,网络出现故障时机房可能无法正常接入;
在同一区域的不同服务器上。它的优点是避免了单台机房的网络和电源故障,缺点是同步速度比同一个机房稍慢。
远程服务器。远程备份的优点是避免了某个区域可能出现的网络故障(例如施工过程中电缆断裂),可以提供最大的可用性,缺点是同步速度慢。
备份到云盘/网盘。目前云备份也很成熟,数据可以备份到网盘。
这个站点采用远程备份方案,用家里的树莓派作为备份服务器,备份空间大,可以省一笔钱。

备份数据方案
有许多备份方案:

完整磁盘备份。最简单粗暴的备份方式,也是最慢的一种,优点是恢复时无忧,拷贝就完成了。VPS商家提供的快照服务就是这样;
备份数据分区。网站的数据库程序文件放在单独的分区,备份时拷贝这个分区就足够了。比全磁盘拷贝快,但同步数据量也大;
仅备份数据库和程序文件。备份数据量小,恢复麻烦。重新安装程序和运行环境,docker可以节省你的心思。
因为是跨WAN备份,这个站点只备份数据库和程序文件,所以传输的数据量最小,备份可以更快完成。

WordPress备份方法
具体到WordPress网站的备份,有以下几种方式:

使用WordPress备份插件。有很多知名的WordPress备份插件,比如UpdraftPlus、BackWPup、WP Time Capsule等。,支持将程序和数据备份到本地、ftp、dropbox、Google Drive等。此方法适用于虚拟主机上托管的网站;
使用备份脚本。如果您的网站运行在您自己的服务器上,您可以编写自己的脚本或使用网络上的脚本进行备份。
该站点使用自己的备份脚本进行备份。请阅读详细的脚本和功能

WordPress备份脚本
该网站使用我自己的备份脚本进行备份。备份脚本具有以下特征:

网站程序文件采用Rsync增量备份,同步速度快。
定期归档程序文件(默认每周一次);
完整数据库备份;
自动删除过期文件。
备份服务器需要Linux或Linux运行环境,如Cygwin。

备份脚本使用方法
在备份服务器上生成RSA公钥:ssh-keygen -t rsa -b 4096,然后将公钥传输到网站服务器:SSH-copy-ID-I ~/。SSH/ID _ rsa.pubroot @网站服务器ip(已做秘密认证请跳过);
复制下面的脚本代码并将其保存到一个文件中,例如根目录中的wp-backup.sh,并根据提示将脚本中的IP和mysql数据库密码更改为您的密码。
编辑/etc/crontab文件,并根据需要定期备份。比如每小时:0 * * * rootbash/root/WP-backup.sh对于个人博客,我个人觉得一天备份一次就够了,毕竟总是一样的。
备份脚本代码
以下是备份脚本代码,请按照提示进行修改:

# 请修改这些变量的值
IP=这里填写你网站服务器ip
WEBDIR=这里填写网站程序目录,例如/data/wwwroot/zsxcool
DBPASS=这里填写Mysql数据库的root密码,如果不需要密码请填123456等任意字符
DBNAME=这里填写数据库的名称
BACKUPDIR=这里填写本地备份目录,例如/root/backup
EXPIRE_DAYS=14  #保留14天的备份,可以改成30天,200天等
 
# 好了,下面的内容一般无需改动
 
# 准备备份目录
mkdir -p ${BACKUPDIR}/db
mkdir -p ${BACKUPDIR}/tar
mkdir -p ${BACKUPDIR}/files
if [ ! -f ${BACKUPDIR}/db ]; then
    echo "无法创建备份目录"
    exit 1
fi
 
# 备份数据库
DBFILE=${DBNAME}-`date +\%Y\%m\%d\%H\%M\%S`.sql.gz
ssh root@${IP} "mysqldump -uroot -p\"${DBPASS}\" ${DBNAME} | gzip > ~/${DBFILE}"
scp root@${IP}:~/${DBFILE} ${BACKUPDIR}/db/
rm -rf root@${IP}:~/${DBFILE}
 
# 备份程序文件
rsync -avP --delete-after root@${IP}:${WEBDIR} ${BACKUPDIR}/files/
 
# 归档程序
day=`date +\%u`
if [ "$day" = "7" ]; then
    tar -jcf ${BACKUPDIR}/tar/`date +\%Y\%m\%d`.tar.bz2 ${BACKUPDIR}/files
fi
 
# 删除过期备份
find ${BACKUPDIR}/db -mtime +${EXPIRE_DAYS} -exec rm -rf {} \;
find ${BACKUPDIR}/tar -mtime +${EXPIRE_DAYS} -exec rm -rf {} \;

脚本注意事项
IP可以是主机名或域名
如果ssh端口不是标准的22,请在~/中配置端口。ssh/配置;
该脚本将备份文件存储在三个目录中:db:存储数据库备份;Tar:存储程序文件的归档文件,可以用tar -jxf文件名解压;文件:存储网站程序文件;
建议将网站服务器上的nginx配置文件和域名程序下载到备份目录,恢复时复制过去。

资源下载此资源仅限注册用户下载,请先
客服QQ:1427707223
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

免责声明   ⚠️ 1. 本站所有资源来源于网络收集,若资源侵犯了您的合法权益, 请来信通知我们(Email: 1427707223@qq.com),我们会及时删除,给您带来的不便,我们深表歉意! 2. 分享目的仅供大家学习和交流,若使用商业用途,请购买正版授权! 否则产生的一切后果将由下载用户自行承担! 3. 会员不得使用于非法商业用途,不得违反国家法律。否则后果自负! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 6. 因源码具有可复制性,一经购买 ,不得以任何形式退款。 7.更多详情请点击查看

优站网 WordPress教程 WordPress备份方案和备份脚本 https://www.zhanceo.com/21110.html

诚乃立身之本、信为道德之基

常见问题
  • 如果付款后没有弹出下载页面,多刷新几下,有问题联系客服!
查看详情
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

联系官方客服

为您解决烦忧 - 24小时在线 专业服务

WordPress备份方案和备份脚本-海报