网站新手入门

2020 世界备份日

今天是一年一度的 3 月 31 日,也就是我们熟知的 世界备份日 World Backup Day。回朔到 2017 年,我们发佈了一篇文章指南,以确保您的网站也被妥善备份。我们在该篇文章内容上做了一些修正并于今日重新发佈。

在当前充满不确定性和危机的时期中,拥有一个良好的备份策略比以往来的更加重要。 然而,请您放心,Gandi 团队会继续努力以维持我们所有服务的连续性并确保我们的服务能够正常运行。

世界备份日

如果您还没有备份您的智慧型手机或是电脑,那麽请您现在立即备份。我们会在这裡等您,然后在一同往下阅读文章!

现在开始请您记得,备份网站就如同您在火灾、地震,或是停电等情况下备份您的个人数据和公司数据那般重要。回想一下,到目前为止您在您的网站上花费了多少的时间,然后再想想,所有的工作和努力就在一瞬间都被抹煞掉,只因为您没有进行备份的动作。

透过 Gandi 的网页代管服务,您可以使用我们的免费快照功能来建立备份。但是首先,我们要先跟您聊聊那裡存在着哪些风险 …

可能发生的最遭情况是什麽?

以防万一您还是不想备份您的网站,让我们先来看一些可能会因此而发生的最糟的情况。

受损的内容管理系统(CMS)

目前为止,网页代管主机已用于代管内容管理系统,像是 WordPress。而且,您只要放鬆对软体更新的防护,就有可能被恶意程式码入侵,而该恶意程式码会被传播到内容管理系统软体内的核心程式码中。在这种情况下,最好的方式是移除整个内容并从头开始。当然,如果您没有要还原的内容的备份资料,那过程将变得更加痛苦。

内容管理系统(CMS)更新错误

另一方面,即使您已经开始进行内容管理系统的更新,有时候还是会有无法预测的情况发生。可能您有一个客製化的主题,该主题在进行更新时发生版本不相容的情形,或是更新到一半的时候有连线问题。

意外删除文件

只要一个删除键,您的整个网站都将消失。但是,更现实的来看,有时候是您以为要删除的内容并不重要,或者您以为不再需要它,又或者,最终它只是您误认不需要的档案。

错过续约时间

我们毫不怀疑您不会忘记续约 (您甚至可以尝试启用自动续约功能),但在偶然的情况下,您还是有可能不小心错过了代管服务的续约日期,最后可能因而会失去您的资料。我们会在到期日之前向您寄出警告通知,并在到期日后提供您两週的时间续约,但是我们都知道将发生什麽事。

使用快照备份功能 (snapshots) 作为您的一种备份策略

让我们一同了解,如何在网页代管主机上使用快照备份功能。

备注:快照功能本身并不能构成一个全面的备份策略,而仅仅是其中一部分。为了保护您的数据,除了快照功能外,您还要进行网站外和离线的备份。

开始前,请务必记住 3-2-1 备份原则:

3 个备份
2 种装置
1 个离线备份

若您能遵守 3-2-1 原则,那麽即使您的网站遭遇到大问题也还是能受到保护。

要在您的主机上启用快照功能,请在主机控制面板页面中的快照功能旁边点选 “启用快照”。

快照功能会在预定的时间备份主机硬碟的资料,因此您可以使用它来建立文件档的备份。

您很有可能还需要备份主机的资料库。如果您使用的是内容管理系统,情况就是这样。您的资料库是储存大部分内容的位置。

快照功能总共会在四个不同的时间点建立四个磁盘影像:一个是昨天内容的快照,一个是前天内容的快照,另一个是上週内容的快照,最后一个是上个月内容的快照。它们将在您的主机中显示为根(/)目录中的 “snapshot” 目录。

那涵盖了您的文件档案。您可以使用在网页代管主机中称为 anacron 的内建工具来规划资料库的备份。接着,这将建立资料库的 “汇出档”,并将其包含在您的快照中。

以前,您必须连接 sFTP 才能编辑您的 “anacrontab” 设定。好消息是,您现在可以从您的网页代管控制面板的控制台中编辑 “anacrontab” 设定。

要从控制台中修改设定,请点选 “Cron” 区块下的 “编辑计划任务”。

或是,您可以透过 sFTP 连结到您的主机并找到 anacrontab 文件。它应该在下列位址中:

/lamp0/etc/cron/anacrontab

无论是从控制面板上还是透过 sFTP 连结到文件以备份数据库,您都需要使用 “mysqldump” 命令执行汇出。

为使备份保持最新状态,您需要建立一个 anacron 任务去执行常规备份。这是您可以添加到主机中范例 (如果帐号 ‘root’ 没有密码,则您必须删除 {-pPASSWORD},如果有,请删除括号 {},并在 ‘-p’ 之后输入 ‘root’ 帐号的密码:

@daily 0 mysql_backup mkdir -p /srv/data/tmp/mysql_backup ; mysqldump -u root {-pPASSWORD} –all-databases | /bin/gzip -9 > /srv/data/tmp/mysql_backup/`date ‘+%F’`.databases.sql.gz ; rm -f /srv/data/tmp/mysql_backup/`date ‘+%F’ –date ‘1 week ago’`.databases.sql.gz

此指定行将于每日汇出您的资料库,并将最后一次的汇出保留一星期,这将与快照完美对应。

牢记 3-2-1 原则,请记得要定期从主机的根目录複製快照目录。如果您真的忘了续约您的主机,如前所述,而最后整个内容都被删除,那麽您唯一的备份将是您下载到本地机器中的备份。

在紧急情况下

如果您必须从备份中还原,则只需要放入与最新备份相对应的目录内容即可。文件夹名称将会是以 Unix 时间标记,像是 1490741558.daily。 数字越多代表备份越新。

将编号最大的目录内容複製到 lamp0 目录中,删除 ‘htdocs’,然后将 ‘htdocs’ 从快照目录中移动到 ‘vhosts’ 目录中。

首先,移除旧资料库并建立一个相同名称的新资料库。

然后,您可以使用 phpMyAdmin 将您的资料库导入到这个新资料库中。要导入它,请从 phpMyAdmin 介面中点击 Import 选项。

就是这麽简单!现在,您可以使用快照功能备份您的网页代管网站。