之前,白龙网曾就drupal8网站的备份与迁移技术,分别从模块backup_migrate、工具Navicat以及使用场景等3个维度分享了《Drupal8.7.6中如何实现网站无缝迁移?》、《Drupal8.7.6中如何备份数据库文件和迁移网站?》、《drupal8从本地如何快速迁移到外网服务器?》等3篇文章,深受drupal爱好者好评。
今天,白龙网结合上述drupal站的3种备份、恢复优缺点,优化升级出一套最简单的网站备份、恢复方案,以飨读者。
Drupal8网站的备份与恢复,涉及源码程序的备份/恢复、数据库的备份/恢复、源码程序与数据库之间相互调用的配置等环节。学会以下3步,即可轻松完成drupal站的备份与迁移:
一、上传网站源码
首先,把本地开发环境根目录下的所有文件,打包压缩成drupal8.zip格式的文件,打包过程中有一个小技巧,即选中根目录下所有文件打包压缩,方便在服务器端解压时少一级目录。
然后,通过LeapFtp(filezilla、WinSCP)把drupal.zip上传到阿里云虚拟主机的根目录htdocs。
接着,登陆阿里云主机管理控制台,在“文件管理->文件管理器->站点根目录”中找到drupal8.zip,把它解压到虚拟机的根目录。
二、导入目标数据库
数据库的导入导出方法有很多,白龙网梳理了3种方式,大家可根据实际情况选择哪一种,或者组合使用哪几种方式,完成数据的导出与导入。
1.NavicatPremium12
不管是本地<->本地、本地<->服务器之间的数据导入、导出工作,都可以借助NavicatPremium12工具来实现,非常方便。
打开NavicatPremium12后,点击“Mysql”新建连接,输入本地或者服务器端数据库的连接名、主机、端口、用户名、密码等信息,即可登陆本地或者服务器端数据库,该工具有3种方法来备份、恢复数据库:
(1)在“数据库名称”上点击右键,在弹出的菜单中会出现“转储SQL文件”,可以选择“结构与数据”、“仅结构”二者之一的方式用来备份数据库,一般选择“结构与数据”,此时备份的数据库格式是*.sql;恢复数据库时,点击“数据库名称”右键,在弹出的快捷下拉菜单中选择“运行SQL文件”即可导入已备份的数据库文件。
实践操作过程中发现,用这种方式备份的数据库文件是完整的,但是当用该方式恢复数据库时,往往会出现恢复不完整的提示,导致数据库恢复失败,可能原因是有相关事务的影响。
(2)基于“转储SQL文件”的便捷性和“运行SQL文件”的缺陷,可以使用“转储SQL文件”来快速备份数据库文件drupal8.sql;然后打开并复制drupal8.sql中的所有内容(其实就是一些表);接着在“查询”选项上点击右键,选择“新建查询”,把drupal8.sql中的所有内容(表)粘贴到新弹出的窗口中,点击“运行”,即可通过“查询”功能完成数据库的导入/恢复工作。
(3)在“备份”选项上点击右键,在弹出的快捷菜单中分别选择“新建备份”、“还原备份”来完成数据库的备份与恢复;该方式备份的数据库格式是*.nb3,恢复的时候当然也要选择该格式的数据库文件来导入。
通过这种方式备份nb3数据库文件,也可以从中提取出*.SQL文件,结合其他通用方式来恢复数据库。
2.XAMPP、WAMPP
使用XAMPP、WAMPP等第三方工具搭建本地开发环境时,两个软件都集成了数据库的管理功能。运行两个软件后,可以通过界面窗口直接进入phpadmin管理数据库,实现数据库的导入、导出功能。不过,这个工具仅仅限于本地数据库的管理。
3.Msql
由于系统等原因,用XAMPP、WAMPP搭建的开发环境,在使用的过程中,可能会遇到数据库莫名其妙的加载不上数据或者启动失败的情况,这个时候安装MYSQL是可以解决这个问题。
此时,进入MYSQL,通过“server->export/import”功能来导出、导入数据库文件,完成备份与恢复工作。但是,该方式的操作,要求mysqldrump版本必须一致,否则,导出文件会失败。
通过数据库的备份恢复三种方式的对比,不难发现,NavicatPremium12使用起来相对来说是最方便的。
三、配置settings.php文件
作为drupal8.7.6站程序与数据库的红娘settings.php,在上传网站源码之前要配置好。如果没有配置该文件,就把网站源码上传到了阿里云虚拟主机,则需要在/htdocs/sites/default中打开settings.php文件,拉到文件的最后,找到对应的参数,配置好阿里云虚拟机中数据库的名称、数据库账号、数据库密码、数据库主机地址、数据库端口号等信息。
至此,网站迁移工作就完成了。白龙网需要强调的是,不管是本地与本地,还是本地与服务器之间数据库的导出、导入,这种方式是最省心、最快捷的方式之一。