1.3 网站分组、备份与迁移
一句话判断
备份是运维里唯一“平时嫌烦、出事救命”的事。1Panel 的网站备份用起来很简单,但要真做到“能恢复”,诀窍是:备完整(目录+数据库+配置)、定期演练恢复、迁移时分清“搬网站”和“搬数据”。
先把备份的边界说清楚
1Panel 的网站备份(网站列表【更多】→【备份列表】)生成的是什么?网站目录的压缩包。
这里有进阶用户必须知道的一点:网站数据不只在目录里。
| 数据在哪 | 备份网站目录能不能覆盖 |
|---|---|
| 网站代码、上传的图片 | 能,在网站目录里 |
| 网站配置(Nginx 配置文件) | 能,在网站目录的配置文件里 |
| 数据库里的内容 | 不能,在数据库里 |
| 应用配置(如 WordPress 的 wp-config.php 里的库地址) | 部分在目录里 |
所以只备份网站目录是不够的。1Panel 提供了一个机制来补这个缺口:关联资源。
关联资源:让备份一步到位
在网站配置的资源标签页,可以把当前网站和一个数据库关联起来。官方文档写得很明确:
将当前网站与某一个数据库进行关联,备份网站时将同时备份关联的数据库。
这是本节最重要的一条操作建议:
每个用数据库的网站,建完后第一件事就是去【资源】里关联数据库。
关联之后,备份网站 = 备份目录 + 备份数据库,恢复时也是一起恢复。不关联,你的备份就是“半个备份”。
官方也提示了一个坑:
切换其他数据库会导致以前的备份无法恢复。
原因也好理解:旧备份里的数据库内容是旧库的,新库结构或数据对不上。换库之前,先把当前备份下载存档。
备份的四种操作
| 操作 | 路径 | 什么时候用 |
|---|---|---|
| 创建备份 | 网站列表【更多】→【备份列表】 | 日常备份,生成在默认备份目录 |
| 恢复 | 备份列表中选目标记录,点【恢复】 | 出事了 |
| 下载 | 备份列表 → 下载 | 存到本地、跨服务器迁移 |
| 导入备份 | 上传备份文件 | 从别的机器恢复 |
下载 → 导入,这就是跨服务器迁移的官方路径。 不需要敲命令,不需要记目录路径。
备份策略:三种节奏配三种站点
备份不是“都每天备一次”那么简单,按站点价值配节奏才是进阶做法:
| 站点类型 | 建议节奏 | 理由 |
|---|---|---|
| 生产主站(电商、SaaS) | 每天至少一次 + 变更前手动备 | 数据最值钱,丢一天都是事故 |
| 内容站(博客、官网) | 每周或每两周一 | 内容更新频率低 |
| 测试/临时站 | 变更时备,或干脆设过期时间 | 价值低,别浪费空间 |
变更前备份是进阶习惯中的进阶:任何破坏性操作之前(升级应用、改配置、换库、删文件),先点一次备份。 它比定时备份更精准——备份的正是“出问题前那一刻”的状态。
1Panel 的计划任务可以配合做自动备份,具体的计划任务配置见第 5.1 节,这里先记住思路:自动备份 + 手动备份(变更前),两条腿走路。
恢复演练:这一步 90% 的人没做过
有备份 ≠ 能恢复。 恢复要验证两件事:
- 备份文件完整吗——压缩包会不会坏;
- 恢复流程我会走吗——真出事的时候是不是手忙脚乱。
建议的演练方式(低风险版):
- 找一个测试站点,或者克隆一个非生产环境;
- 在备份列表创建一个备份;
- 在网站上做点修改(比如改个首页标题);
- 从备份恢复;
- 确认标题变回来了——说明恢复真的生效了。
每季度演练一次。 这件事的回报率极高:真出事的时候,别人在查文档,你已经恢复了。
迁移实战:三种场景三种做法
场景一:同一台 1Panel 内换分组/换域名
不需要迁移,用网站配置的其他标签页:可以更改主域名、切换分组、更新备注。
注意:改主域名是高风险操作——DNS 没切过来就改,站点立刻 404。顺序是:先在新域名解析生效,再在面板改绑定。
场景二:从一台 1Panel 迁到另一台
走官方的“下载 + 导入”路径:
- 源服务器:备份列表创建备份 → 下载到本地;
- 目标服务器:创建一个同类型的空网站(代号尽量一致,省得改路径);
- 目标服务器:上传备份文件(导入备份);
- 恢复;
- 重建外部依赖:数据库、运行环境、应用、证书都要在目标机器上重新准备;
- 验证:本地 hosts 指向新机器,测一遍再切 DNS。
这里有个真实的大坑:导入备份恢复的是网站文件,不会帮你把运行环境、数据库、应用一并搬过去。 迁移的本质是“在新机器上重建环境,再把数据灌进去”。
检查清单:
| 项目 | 迁移后要不要重建 |
|---|---|
| 网站代码、上传文件 | 随备份恢复 |
| Nginx 站点配置 | 随备份恢复 |
| 数据库 | 需手动迁移或随关联备份恢复 |
| PHP / Node 等运行环境 | 需在目标机重新安装 |
| 应用商店应用 | 需在目标机重新安装 |
| SSL 证书 | 需重新申请或导出导入 |
| 分组 | 需在目标机重建 |
场景三:1Panel v1 迁到 v2 / 社区版升专业版
这是更底层的迁移,1Panel 官方提供了专门的迁移文档(installation/master-migrate、installation/v1-migrate、installation/migrate-to-enterprise)。这类迁移务必按官方文档走,别用“复制目录”的野路子——数据库结构、配置格式都可能不同。
一句话原则:版本迁移看官方文档,站点迁移用备份导入。
备份文件的两种用法
下载下来的备份文件,除了迁移还有两个实用场景:
场景一:本地开发环境同步。 把生产备份下载、导入到本地的 1Panel,立刻得到一份和生产一致的数据。排查“本地正常、生产报错”的问题时,这是唯一可靠的办法。
场景二:应急回滚。 做大改动前下载一份备份到本地。万一改完出问题、连面板都进不去,至少文件还在,能手动解压恢复代码。
有个细节值得强调:导入备份时选的是“网站备份文件”,不是任意压缩包。 格式必须是 1Panel 备份生成的格式,手动打的 zip 是导不进去的。
备份保管的三个建议
第一,别把备份只留在服务器上。 服务器挂了,同机的备份一起挂。定期下载关键备份到本地或对象存储。
第二,备份保留要有周期。 全留着硬盘迟早满。建议“近期备份多留、远期备份少留”,比如保留最近 7 个每日备份 + 最近 4 个每周备份。
第三,删站前单独备份一次。 下载到本地再删。删除网站时勾选“删除备份”是不可逆的,官方明确警告可能造成数据丢失。
网站分组:备份边界的天然切分
把 1.1 节讲的分组和备份放在一起看,你会发现一个很顺的设计:
| 分组 | 备份节奏 | 保留策略 |
|---|---|---|
prod 客户站 |
每日 + 变更前 | 长期保留 |
internal 内部工具 |
每周 | 中期保留 |
staging 测试 |
随意 | 短期清理 |
tmp 临时站 |
不备,直接设过期时间 | 到期自动停 |
分组 = 备份策略单元,这样管理起来心智负担最小。这也是为什么建议“一个分组对齐一套备份策略”。
一个完整的迁移检查清单
照着走,基本不会漏:
迁移前(源服务器)
□ 创建网站备份(确认已关联数据库)
□ 下载备份到本地
□ 记录:运行环境版本、PHP 版本、应用列表
□ 记录:域名清单、证书状态、DNS 记录
□ 通知用户/客户停机窗口
迁移中(目标服务器)
□ 安装相同版本的 OpenResty
□ 安装运行环境和应用
□ 创建同类型空网站,代号一致
□ 导入备份并恢复
□ 检查关联数据库是否恢复成功
迁移后(验证)
□ 本地 hosts 改解析,完整走一遍业务
□ 确认首页、登录、上传、支付等关键流程
□ 确认 404 页面、HTTPS 证书正常
□ 切换 DNS
□ 观察 48 小时错误日志
□ 保留源服务器数据至少 7 天再清理
最后一行值得强调:源服务器别急着清理。迁移后 48 小时内很可能发现某个角落没搬干净,留个退路。
本节要点
- 只备网站目录不够,一定要在【资源】里关联数据库;
- 备份节奏按站点价值定,变更前手动备是回报最高的习惯;
- 下载 + 导入是官方迁移路径,但运行环境、应用、证书要手动重建;
- 每季度做一次恢复演练,确认备份真能用;
- 版本级迁移看官方文档,别用复制目录的野路子。
更完整的参数说明可以对照 《1Panel 官方文档:功能手册》 的“网站备份”与“安装迁移”章节。
下一节:网站都保护好了,最后一块拼图是安全——WAF 网页防火墙实战。
