网站备份(站点备份)。将 Drupal 网站迁移到另一个域名
使用 Backup and Migrate 创建备份
使用 Backup and Migrate 模块来创建您的 Drupal 网站副本。
下载模块 Backup and Migrate,安装并启用它。
然后进入后台菜单:管理 → 内容管理 → Backup and Migrate。您将进入模块的主页面。如果立即点击 Backup now,Drupal 将创建数据库的 备份文件,您可以将其保存到本地计算机;如果选择 “Manual Backups Directory”,则备份将保存在 sites/default/files/backup_migrate/manual
文件夹中(这是默认路径,可根据 Drupal 设置 的不同而变化)。
这样我们就保存或下载了数据库转储文件。接下来,将 Drupal 的所有文件传输到新的主机或服务器。我通常使用 FileZilla 程序,并将传输线程设置为 10,这样可以大大提高 Drupal 上传到主机 的速度。关于 FTP、FTP 客户端及其使用方法,请参阅 drupalbook.org 教程的前几篇文章。
如果一切正确,您将看到如下界面:
文件上传到主机后,请为新的 Drupal 网站创建一个 MySQL 数据库。如果您使用的是虚拟主机,大多数情况下会有管理面板(如 cPanel、DirectAdmin、ISPmanager)。关于如何通过这些主机管理面板创建数据库,请参阅 drupalbook.org 的相关文章。
当数据库创建完成并且文件已上传后,需要删除 Drupal 配置文件 settings.php
。它位于 sites/default/settings.php
。删除此文件后,Drupal 将自动启动安装程序。像平常一样进行安装:
安装完成后,所有模块仍位于 sites/all/modules
文件夹中,但尚未启用。启用 Backup and Migrate 模块,然后进入其设置页面,切换到 “Restore” 选项卡。
如果您将数据库转储保存到了本地计算机,请选择第一个选项:上传转储文件并点击 “Restore now”。如果您将转储文件保存在服务器上,请点击 “Saved backup destinations”,然后选择 “List files” → “Manual Backups Directory”,并点击所需转储的 “Restore”。确认恢复后,网站的数据库将被完全还原。
使用 Sypex Dumper 创建备份
使用 Sypex Dumper 虽然可行,但相比 Backup and Migrate 模块更复杂。后者可轻松实现 从 Denwer 迁移到主机 或 从主机迁移到 Denwer。
经常会出现需要将网站从一个主机迁移到另一个主机的情况,或者您在 Denwer 上开发了网站,现在需要将其上传到互联网上。我们将在后续文章中讲解如何将本地网站上传到互联网。现在,让我们逐步分析如何完成这一操作。
Drupal 网站备份
首先,需要下载一个可以复制数据库的应用程序。我通常使用 Sypex Dumper,可以从 这里 下载。我们只需 lite 版本即可。
压缩包中应包含两个文件:dumper.php
和 readme.txt
。在 readme.txt 文件中已经说明了使用方法,但我将在下面详细介绍如何创建完整的备份。
安装步骤
- 解压下载的 zip 文件。
- 将
dumper.php
上传到服务器的任意可通过 Web 访问的目录。 - 为该目录设置权限 CHMOD 777。
使用方法
- 在浏览器中打开 http://domain.com/dumper.php
- 输入数据库的登录名和密码。
- 创建数据库备份:
- 在顶部选择要备份的数据库。
- 过滤器留空(表示备份该数据库的所有表)。
- 选择压缩方式(bzip2 最有效,但速度最慢)。
- 选择压缩级别(推荐 7)。
- 点击 “应用”。
- 完成后,点击 “下载文件” 或通过 FTP 下载。
- 从备份恢复数据库:
- 在底部选择目标数据库。
- 从下拉菜单中选择转储文件(可先上传到 backup 文件夹)。
- 点击 “应用”,系统将开始恢复数据库。
过滤器
可以通过表名模板指定要包含或排除的表,支持以下通配符:
- * — 任意数量的字符
- ? — 单个任意字符
- ^ — 排除匹配的表
示例:
ib_*
— 所有以 ib_ 开头的表。ib_*, ^ib_sessions
— 所有以 ib_ 开头的表,除了 ib_sessions。^*s
— 所有不以 s 结尾的表。
实际操作
1. 将 dumper.php
复制到网站根目录。
2. 打开 dumper.php
并修改以下内容:
define('URL', 'http://example.ru');
define('DBNAMES', 'your_database_name');
3. 如果网站处于运行状态,请切换到维护模式,并清除缓存以减小备份体积。
4. 在浏览器中输入 example.ru/dumper.php,输入数据库用户名和密码(在 Denwer 上默认为 root,密码为空)。
5. 登录成功后创建数据库转储文件:
6. 在网站文件夹中生成了一个 backup
文件夹,其中包含数据库副本:
7. 复制整个网站文件(包括 backup 文件夹),这就是完整的站点备份。
将网站迁移到其他主机(从 Denwer 迁移到主机)
- 按照上述方法创建网站备份。
- 将所有文件复制到新主机。
- 如果域名更改,打开数据库转储文件并使用文本编辑器(如 Notepad++)替换旧域名为新域名。
- 创建新数据库。
- 在
dumper.php
中修改新站点的域名和数据库名。 - 编辑 Drupal 配置文件
sites/default/settings.php
,修改变量 $db_url 以更新数据库登录凭据。 - 在新站点运行 dumper.php,选择 “Restore”,导入修改后的转储文件。
如果一切正确,网站将在新地址上成功运行。关于 DNS 修改、数据库创建和主机选择的更多内容,请参阅之前的文章。