下面我将为你提供一份超详细的 WordPress 备份指南,涵盖为什么备份、备份什么、如何备份、如何恢复以及最佳实践

wordpress 网站备份
(图片来源网络,侵删)

为什么要备份 WordPress 网站?

  • 防止数据丢失:服务器硬件故障、人为误删、黑客攻击等都可能导致网站数据丢失。
  • 快速恢复:当网站出现问题时,可以从备份中快速恢复,而不是从头开始。
  • 安全防护:如果网站被黑,干净的备份可以让你快速恢复到一个安全的状态。
  • 网站迁移:更换服务器或域名时,完整的备份是迁移网站的基础。
  • 版本回滚:当你更新主题、插件或核心文件后导致网站崩溃时,可以快速回滚到更新前的版本。

备份什么内容?

一个完整的 WordPress 备份通常包括两个核心部分:

  1. 文件:这是你网站的所有代码和资源。

    • 位置:通常在您网站的根目录下(通过 FTP 或文件管理器访问)。
      • wp-config.php (核心配置文件,包含数据库信息)
      • /wp-content/ 目录(最重要!包含主题、插件、上传的图片/文件等)
      • /wp-includes//wp-admin/ 目录(WordPress 核心文件)
      • .htaccess 文件(URL 重写规则等)
    • 为什么重要:没有这些文件,你的网站只是一个空壳。
  2. 数据库:这是你网站的所有数据。

      • 文章、页面、分类、标签
      • 评论
      • 用户信息和角色
      • 主题和插件的设置选项
      • 自定义字段
    • 为什么重要:没有数据库,你的网站就没有任何内容。wp-content/uploads 文件夹里的文件信息也存储在数据库中。

只备份数据库或只备份文件都是不完整的,两者缺一不可。

wordpress 网站备份
(图片来源网络,侵删)

如何备份 WordPress 网站?(多种方法)

你可以根据自己的技术水平和需求选择最适合的方法。

使用插件(最推荐,适合所有人)

这是最简单、最安全、最常用的方法,插件可以自动完成文件和数据库的备份,并支持设置定期备份和多种存储方式。

推荐插件:

  1. UpdraftPlus (最流行,功能强大,免费版已足够)
  2. All-in-One WP Migration (非常适合迁移,备份也简单)
  3. Duplicator (可以创建完整的网站包,适合迁移和备份)

以 UpdraftPlus 为例,操作步骤:

wordpress 网站备份
(图片来源网络,侵删)
  1. 安装插件:在 WordPress 后台 插件 > 安装插件 中搜索 "UpdraftPlus",然后点击 "现在安装" 和 "启用"。
  2. 配置备份
    • 进入 设置 > UpdraftPlus
    • 设置 选项卡中,你可以配置备份的频率(每天、每周等)、保留的备份数量等。
    • 文件/数据库设置 中,可以选择备份哪些内容(默认全选即可)。
  3. 执行备份
    • 备份 选项卡中,点击 创建备份
    • 你可以选择 完整备份(文件+数据库),也可以分开备份,点击后,插件会开始打包文件和数据库。
  4. 存储备份
    • UpdraftPlus 最大的优点是支持将备份存储到多个地方。
    • 设置 > 添加-ons 中,你可以启用并配置各种存储服务,如:
      • Google Drive, Dropbox, OneDrive (推荐,免费且安全)
      • Amazon S3 (适合大量数据)
      • FTP/SFTP (上传到另一台服务器)
      • 电子邮件 (只适合非常小的备份)
    • 配置好存储后,备份文件会自动上传到你指定的云端,实现异地备份,更加安全。

通过 cPanel 手动备份(适合有一定技术基础的用户)

如果你使用的是虚拟主机(Virtual Hosting),通常都提供 cPanel 控制面板。

  1. 备份数据库

    • 登录你的 cPanel。
    • 找到 数据库 部分,点击 phpMyAdmin
    • 在左侧列表中,选择你的 WordPress 数据库(通常以你的网站名为前缀)。
    • 点击顶部的 导出 选项卡。
    • 选择 快速 导出方式,然后点击 执行
    • 浏览器会自动下载一个 .sql 格式的数据库备份文件。
  2. 备份文件

    • 返回 cPanel 主页。
    • 找到 文件 部分,点击 备份
    • 点击 生成网站备份
    • 在弹出的窗口中,确保 主目录 被选中,然后点击 生成备份
    • 备份完成后,你可以在 备份文件 列表中找到它,并点击 下载 来下载一个完整的网站压缩包(通常是 .tar.gz 格式)。

优点:免费,不依赖 WordPress。 缺点:操作繁琐,需要手动操作,无法自动化。

通过 FTP/SFTP 手动备份(适合所有服务器环境)

  1. 连接服务器:使用 FTP 客户端(如 FileZilla)连接到你的网站服务器。
  2. 下载文件:将整个网站根目录(通常是 public_htmlwww 文件夹)下载到你的电脑上,这可能会花费很长时间,特别是对于大网站。
  3. 备份数据库:数据库备份需要通过 phpMyAdmin(如方法二所述)或通过命令行进行,纯 FTP 无法直接备份数据库。

优点:最直接的控制方式。 缺点:非常耗时,无法备份数据库,容易出错。

主机自带的备份功能(最省心)

许多优质的主机提供商(如 SiteGround, Kinsta, Cloudways 等)会提供内置的备份服务。

  • 如何查找:登录你的主机控制面板,查找 "Backup", "Site Backup", "Restore" 等相关选项。
  • 优点:通常免费、自动化,并且是主机级别的备份,可靠性高。
  • 缺点:不同主机功能差异大,可能需要付费才能获得更高级的功能(如更多保留时间、一键恢复等)。

建议:即使主机提供备份,也建议使用 UpdraftPlus 这样的插件再做一个备份,实现双重保险。


如何恢复 WordPress 网站?

恢复是备份的最终目的,同样有多种方法。

使用 UpdraftPlus 恢复(最简单)

  1. 安装并启用 UpdraftPlus 插件:如果网站已经无法访问,你需要通过 FTP 将插件文件上传到 /wp-content/plugins/ 目录,然后在数据库中手动激活(wp_options 表中找到 active_plugins 选项)。
  2. 设置:进入 设置 > UpdraftPlus
  3. 恢复:点击 现有备份 选项卡,你会看到之前存储的备份列表。
  4. 选择备份:找到你想恢复的备份,点击 恢复
  5. 选择恢复内容:你可以选择恢复 数据库插件主题上传的文件 等,通常建议全部勾选,然后点击 恢复
  6. 等待完成:插件会自动解压并覆盖文件,然后恢复数据库,完成后,你的网站就会恢复到备份时的状态。

通过 cPanel 恢复

  1. 恢复文件
    • 在 cPanel 的 文件 > 备份 页面,找到你之前下载的网站备份包。
    • 点击 还原,然后上传 .tar.gz 文件。
  2. 恢复数据库
    • 在 cPanel 中进入 phpMyAdmin
    • 选择你的 WordPress 数据库。
    • 点击 导入 选项卡,上传之前下载的 .sql 数据库备份文件。
  3. 修改 wp-config.php:如果你在新环境上恢复,或者数据库名、用户名、密码有变化,必须修改 /wp-config.php 文件中的数据库信息,确保其与当前环境的数据库匹配。

手动恢复(最复杂)

  1. 上传文件:通过 FTP 将你之前下载的网站文件上传到服务器的根目录。
  2. 导入数据库:通过 phpMyAdmin 导入数据库备份文件。
  3. 修改 wp-config.php:同上,修改数据库连接信息。
  4. 修改数据库中的 URL(如果域名改变):
    • 在 phpMyAdmin 中,进入你的数据库。
    • 执行以下两条 SQL 语句(将 old_url.comnew_url.com 替换为你的实际域名):
      UPDATE wp_options SET option_value = replace(option_value, 'http://old_url.com', 'http://new_url.com') WHERE option_name = 'home' OR option_name = 'siteurl';
      UPDATE wp_posts SET guid = replace(guid, 'http://old_url.com', 'http://new_url.com');
      UPDATE wp_posts SET post_content = replace(post_content, 'http://old_url.com', 'http://new_url.com');
    • 注意:如果你的表前缀不是 wp_,请相应修改。

备份最佳实践

  1. 3-2-1 备份原则

    • 3 份副本:至少保留3份网站的备份。
    • 2 种不同介质:一份在服务器本地,一份在云端(Google Drive/Dropbox)。
    • 1 份异地备份:至少有一份备份存储在与主服务器不同的物理位置,以防服务器机房出问题。
  2. 自动化是关键:不要依赖手动备份,设置插件或主机服务,让备份自动定期执行(每天一次)。

  3. 定期测试恢复:备份没有经过测试就是无效的,每隔几个月,尝试在一个测试环境中恢复一次备份,确保备份文件是完整和可用的。

  4. 保留多个版本:不要只保留最新的备份,保留最近一周、一个月、三个月的备份,以防在某个时间点网站被植入恶意代码,而你没有及时发现。

  5. 将备份文件设为私有:不要将你的备份文件放在网站可以被公开访问的目录下(如 public_html/backups/),这会给黑客提供可乘之机,最好的方式是存储在云盘或服务器上不公开的目录。

  6. 更新前备份:在进行重大操作前,如更新 WordPress 核心、主题或插件,务必备份,这样如果更新后出问题,可以迅速回滚。

希望这份详细的指南能帮助你轻松搞定 WordPress 网站的备份工作!