🪐前言
🪐前言
你做了安全防护(回看上一篇 #40),但安全防护只能降低概率,不能保证绝对不出事。万一真出了问题——黑客篡改了文件、插件更新冲突把站搞崩了、误操作删了产品库——你有没有一份能立刻拿来恢复的备份?
说实话,绝大多数人第一次意识到备份的重要性,都是在丢了数据以后。一个客户站被勒索软件搞掉了3000个产品,没有备份,花了三周手工重建。从那以后,我每个站都是双重备份+自动还原测试。
这篇文章给你一套可以直接执行的备份方案,覆盖自动备份配置、异地存储、手动备份和完整的还原演练。
一、3-2-1备份原则:为什么这个策略是标准
备份届有一个经过几十年验证的原则:3-2-1策略。不是理论,是实践总结出来的最低安全基线。
🧠 3-2-1是什么
3份副本:
1份生产环境(你的在线网站)
+ 2份备份副本
理由:只有一份备份=没有备份(那份也有可能坏)
2种存储介质:
主机本地存储 + 云端异地存储
理由:硬盘和云不会同时坏,火灾不会同时烧掉两个地方
1份异地:
至少有一份备份不在同一台物理服务器上
理由:服务器机房火灾、地震、勒索软件
💡 我们实践中的 3-2-1 落地:在线站(1)+ 主机本地备份(2)+ Google Drive 云备份(3)= 3份。本地磁盘 + 云存储 = 2种介质。Google Drive 不在同一服务器 = 1份异地。完美匹配。

二、UpdraftPlus 自动备份到 Google Drive
UpdraftPlus 是 WordPress 备份领域的第一插件。免费版支持定时自动备份到 Google Drive、Dropbox、Amazon S3 等多个云存储。对大多数外贸站来说,免费版完全够用。
🔧 安装与基础配置
安装:插件 → 安装插件 → 搜 "UpdraftPlus" → 安装激活(作者 TeamUpdraft / UpdraftPlus.com)
安装后左侧菜单出现 Settings → UpdraftPlus Backups,所有的备份操作在这里完成。
📅 定时备份计划配置
Settings → UpdraftPlus Backups → Settings 标签
Files Backup Schedule(文件备份计划):
推荐:Weekly(每周一次)
理由:
// 模板、插件、主题不天天改动
// 每周备份文件足够覆盖99%的场景
// 如果每天改页面(用Elementor重建设计),改为 Daily
Database Backup Schedule(数据库备份计划):
推荐:Daily(每天一次)
理由:
// 产品、订单、文章、用户——这些数据每天都在变
// 丢一天的数据库比丢一周的代价小得多
// 数据库备份体积小(通常5-50MB),每天存几百天都不占空间
Number of scheduled backups to retain(保留备份数):
文件:保留 4 份(4周的)
数据库:保留 30 份(30天的)
☁️ 配置 Google Drive 远程存储
这是最关键的一步——把备份自动传到云端。
第一步:获取Google Drive认证
- Settings → UpdraftPlus Backups → Settings 标签 → 拉到 "Choose your remote storage"
- 点击 Google Drive 图标(选中后出现蓝色边框)
- 页面底部点击 "Save Changes"
- 页面刷新后,顶部出现黄色提示横幅"To complete your connection……"
- 点里面的链接 → 跳转到Google OAuth授权页面
- 选择一个你的Google账号,点击"Allow"授权UpdraftPlus访问你的Google Drive
- 复制返回的授权码 → 粘贴到UpdraftPlus的认证框 → 点击 "Complete setup"

第二步:验证远程连接
认证成功后,页面底部会显示你的Google账号名和可用空间。点击 "Test Settings" 按钮(在Google Drive区域旁边),UpdraftPlus会上传一个测试文件再自动删除。如果显示"Success",认证成功。
第三步:设置远程存储路径
默认备份文件在Google Drive中的存储位置:
My Drive > UpdraftPlus > 你的域名.com > files / database
如果需要改路径(如不同网站放不同文件夹):
// Settings → UpdraftPlus Backups → Settings
// 找到 "Google Drive" 区域 → Folder: 改路径(如 /WordPress-Backups/site1)
// 保存后再点"Test Settings"验证新路径可用
⚙️ 备份内容选择优化
UpdraftPlus默认备份WordPress核心、插件、主题、uploads和数据库。但有些东西不需要每天备份:
建议排除的备份内容(在Settings页面勾选):
✅ Exclude uploads older than: 1 year
→ 旧图片大概率不再变化,存一份就够
✅ Exclude WordPress core files
→ 核心文件可以从 wordpress.org 免费下载
→ 各版本都有存档,不需要备份
→ 恢复时下载同版本核心 + 还原你的插件/主题/数据库即可
⚠️ 但注意:如果你改了WordPress核心文件(不推荐),不能排除核心
建议始终备份的内容:
✅ Plugins(插件)
✅ Themes(主题)
✅ Uploads(上传目录——产品图、页面配图)
✅ Database(数据库——所有内容、设置、订单数据)
✅ wp-config.php(如果勾选了包含额外文件)
排除WordPress核心文件后,每次备份体积减少约30-50MB,上传到Google Drive快很多。
📤 手动立即备份
在配置自动备份之前,先做一次完整手动备份:
Settings → UpdraftPlus Backups → Backup / Restore 标签 → 点击蓝色 "Backup Now" 按钮
手动备份选项:
✅ Include files in backup(包含文件)
✅ Include database in backup(包含数据库)
然后点击 "Backup Now" → UpdraftPlus开始打包
备份完成后:
→ 在 Backup / Restore 标签页看到最新的备份记录
→ 每条记录有5个组件:Database, Plugins, Themes, Uploads, Others
→ 检查每个组件的体积是否正常(不是0KB)
→ 确认 "Remote" 列显示已上传到Google Drive
三、阿里云OSS作为第二异地存储
3-2-1策略要求两种不同的存储介质。Google Drive算一个,你可以把阿里云OSS加进来作为第二种云存储,或者直接作为主存储(如果你更倾向国内服务)。
☁️ 配置阿里云OSS远程备份
UpdraftPlus免费版直接支持Amazon S3,而阿里云OSS兼容S3协议。配置步骤如下:
第一步:开通阿里云OSS
- 登录阿里云控制台 → 对象存储OSS → 创建Bucket
- 名称自定义(如
wp-backup-yourdomain) - 区域选离你服务器最近的(如华东2-上海)
- 存储类型:低频访问(备份场景不常读,成本最低)
- 读写权限:私有(千万不要设公共读)
第二步:获取AccessKey
1. 阿里云控制台 → 鼠标悬停右上角头像 → AccessKey管理
2. 创建AccessKey → 复制 AccessKey ID 和 AccessKey Secret
3. ⚠️ 这两个信息就是你的oss密码,不要发给任何人
第三步:装UpdraftPlus S3兼容扩展
UpdraftPlus免费版不直接支持阿里云OSS,但支持兼容S3协议的任何存储。装一个轻量扩展即可:
- 安装免费插件 "UpdraftPlus: S3-Compatible"(或直接装 "UpdraftPlus: AliOSS",由开发者维护的第三方扩展)
- 安装激活后,UpdraftPlus的远程存储选项中会出现 S3 Compatible (Generic) 或 Aliyun OSS
- 填入OSS配置:
S3-Compatible 配置填入:
S3 Endpoint: https://oss-cn-shanghai.aliyuncs.com(替换为你的Bucket区域域名)
S3 Access Key: 你的 AccessKey ID
S3 Secret Key: 你的 AccessKey Secret
S3 Bucket Name: wp-backup-yourdomain
S3 Location / Region: oss-cn-shanghai(对应你的Bucket区域)
⚠️ 阿里云OSS有少量存储费用和流量费用。备份文件体积在1GB以内的话,月费用不超过 ¥2-5,接近免费。流量费用只有在你下载/还原备份时产生。
🆚 双存储建议
推荐的备份存储组合(3-2-1落地):
1. 本地备份(主机上自动存一份,UpdraftPlus默认行为)
2. Google Drive(免费15GB,够大多数站用1-2年)
3. 阿里云OSS(¥2-5/月,国内线路恢复时下载速度极快)
这样做的好处:
→ Google被墙不影响(OSS在国内)
→ 阿里云出问题不影响(Google Drive在海外)
→ 主机硬盘故障不影响(两份云备份)
四、手动备份方法(不用插件也能做)
自动备份很好,但有三种情况你需要手动备份:
- 插件在搬家/迁移时体积太大(>500MB),UpdraftPlus分包打包太慢
- 主机资源限制,UpdraftPlus定时任务跑不起来
- 你要深度控制备份内容,排除特定文件
📂 手动备份文件
# SSH登录服务器,执行以下命令
# 第一步:打包整个WordPress目录
cd /path/to/your/site/
tar -czf /tmp/wordpress-backup-$(date +%Y%m%d).tar.gz \
--exclude='wp-content/cache' \
--exclude='wp-content/updraft' \
--exclude='.git' \
.
# 第二步:单独导出数据库
wp db export /tmp/database-backup-$(date +%Y%m%d).sql
# 或者用mysqldump(如果没用wp-cli)
# 数据库名、用户名、密码通过wp-config.php获取
mysqldump -u DB_USER -pDB_PASSWORD DB_NAME > /tmp/database-backup-$(date +%Y%m%d).sql
手动备份注意事项:
// date +%Y%m%d 会在文件名中嵌入日期,如 20260509
// --exclude 排除缓存和已备份的updraft目录,缩小包体积
// 生产环境 wp-config.php 中的数据库密码通常是加密的
// 直接用 wp config get 或者看 wp-config.php 文件
📤 手动上传到云存储
打包完成后,两个文件(文件包 + 数据库SQL)上传到你的云存储:
# 上传到Google Drive(需要先装rclone并配置)
rclone copy /tmp/wordpress-backup-20260509.tar.gz gdrive:backups/
rclone copy /tmp/database-backup-20260509.sql gdrive:backups/
# 上传到阿里云OSS(需要先装ossutil)
ossutil cp /tmp/wordpress-backup-20260509.tar.gz oss://wp-backup-yourdomain/
ossutil cp /tmp/database-backup-20260509.sql oss://wp-backup-yourdomain/
# 清理临时文件
rm /tmp/wordpress-backup-*.tar.gz /tmp/database-backup-*.sql

五、完整还原演练步骤
备份的意义不在于"存着",而在于"能用"。一份没验证过的备份,和没有备份是一样的。强烈建议每3个月做一次完整还原演练。
🔄 用 UpdraftPlus 还原(标准流程)
在现有站点上还原(站点没崩溃,但想回滚):
- Settings → UpdraftPlus Backups → Backup / Restore 标签
- 在备份记录列表中找到要还原的那一份
- 点击这一行对应的蓝色 "Restore" 按钮
- 在弹窗中选择要还原的组件:
还原组件选择:
✅ Plugins(需要同时勾选)
✅ Themes(需要同时勾选)
✅ Uploads(如果不恢复图片选否)
✅ Database(核心,必须勾选)
─ Others(包括wp-config.php,如果不换服务器一般不勾选)
警告提示:
⚠️ 还原数据库会覆盖当前数据库的所有内容
⚠️ 所有在备份点之后产生的新订单、新文章会丢失
⚠️ 如果只是要恢复某一个产品/文章,不要用全库还原
⚠️ 还原过程会强制登出,因为你的登录session会被备份覆盖
- 点击 "Restore" 确认
- UpdraftPlus 从云端下载备份文件 → 解压 → 逐组件还原
- 还原完成后,会提示你重新登录
- 登录后,UpdraftPlus 可能提示数据库需要自动更新 → 点击更新
🆕 在新服务器上还原(全站迁移/灾难恢复)
这是最关键的还原场景——原服务器不能用了,你要在新服务器上重建整个站:
第一步:准备干净WordPress
1. 在新服务器上安装一个全新的WordPress(和原站同版本)
2. 登录新站后台 → 安装并激活 UpdraftPlus 插件
3. 安装并激活你原来用到的S3兼容/OSS扩展
4. 同样完成 Google Drive 或阿里云 OSS 的认证连接
第二步:查找并还原备份
1. Settings → UpdraftPlus Backups → Backup / Restore
2. 如果新站认证了同样的Google Drive账号或OSS
→ UpdraftPlus自动识别云端备份列表
→ 点击 "Scan remote storage" 手动刷新
3. 看到备份列表后,找到最新的那份
4. 勾选全部组件 → Restore
5. 还原完成后 → 登录 → 检查首页、产品页、登录页是否正常
第三步:还原后的必做检查
还原后检查清单:
✅ 首页能正常打开
✅ 产品/文章列表页正常
✅ 登录页可用(用原账号密码登录)
✅ 图片是否全部加载(Uploads是否完整还原)
✅ 内链是否正常(固定链接 → 点保存刷新)
✅ 插件是否全部激活(有些可能需要手动激活)
✅ 主题是否还原(需手动激活原主题)
✅ SSL证书是否配置
✅ 邮件发送是否正常(SMTP配置是否保留)
🧪 本地还原演练(最安全的测试方法)
如果你想验证备份可用但不想冒在线上操作的风险,用本地环境(如 Local by Flywheel, XAMPP, MAMP)做一次完整还原:
本地还原演练步骤:
// 1. 在你的电脑上安装 Local by Flywheel 或 Laragon
// 2. 创建新WordPress站点 → 安装UpdraftPlus → 认证Google Drive
// 3. 右键备份记录 → 选择 "Download to local"
// 4. 解压下载的备份ZIP包
// 5. UpdraftPlus → Restore → 指向解压后的文件
// 6. 等待还原 → 登录本地站 → 检查所有页面
// 7. 如果本地还原成功 → 这份备份是可信的
// 8. 记录演练日期:下一个演练+3个月

六、备份策略中的常见误区
🕳️ 误区一:主机商说每天备份,我就不管了。
主机商的备份通常只保留7-14天,出问题超过这个时间窗口就没了。而且主机商通常只备份整个服务器的快照,你需要找客服才能拿回文件——最快也要几小时。自己掌握备份控制权。
🕳️ 误区二:备份了就等于安全了。
备份文件本身也可能损坏、不完整、版本不对。不验证过的备份不能叫备份。每3个月做一次还原演练。
🕳️ 误区三:UpdraftPlus只配了Google Drive就够了。
Google Drive是单一存储介质。Drive出问题(被限、被删)你就没了备份。至少两种云存储。
🕳️ 误区四:数据库和文件用同一频率备份。
文件改得慢(周备份足够),数据库每时每刻在变(日备份是底线)。分开设置频率。
总结
备份不是一个任务,是一个系统。3-2-1原则是底线,自动化是保鲜手段,还原演练是唯一能证明备份有效的办法。
- 🔢 3-2-1原则落地:3份副本(在线+本地备份+云备份)、2种介质(磁盘+云)、1份异地(Google Drive或阿里云OSS)。
- 🤖 UpdraftPlus自动化:文件每周备份保留4份、数据库每天备份保留30份、自动上传到Google Drive。
- ☁️ 双云存储:Google Drive(海外)+ 阿里云OSS(国内),一份被墙或故障不影响另一份。
- 🧪 每3个月一次还原演练:在本地环境或测试站完整还原一份备份,验证文件完整性和数据库可用性。
如果备份还原过程中遇到问题:
- UpdraftPlus官方帮助:https://updraftplus.com/support/
- UpdraftPlus免费版与付费版差异:https://updraftplus.com/comparison-updraftplus-free-vs-updraftplus-premium/
- WordPress恢复指南:https://wordpress.org/support/article/restoring-your-wordpress-site-from-backup/


