跳转到主要内容
你行网

Main navigation

  • 首页
  • 文章
  • 教程
  • 视频
  • 下载
  • 社区
  • 网站导航
User account menu
  • 登录

面包屑

  1. 首页

如何在 DRUPAL 8(或 9)网站上执行自动备份

由 hrs, 15 七月, 2023

不同的 Drupal 开发人员有不同的技术来备份他们的 Drupal 网站。在本文中,我们将讨论备份 Drupal 8 或 Drupal 9 网站的两种常用方法。一种是借助备份和迁移 Drupal 模块。另一种方法是使用 CLI 执行 Cron 作业。

数据丢失可能是残酷和毁灭性的,无论是谁或什么原因造成的。好消息是,可以通过定期备份网站来预防这种情况。有时,每天都会进行备份,有时则偶尔进行。规律性取决于多种因素,例如 Drupal 站点的大小或更新网站的频率。幸运的是,Drupal 8 和 9 为您提供了更简单的选项,借助备份和迁移 Drupal 模块并通过 CLI 来备份和恢复您的网站。

使用 Drupal 8 和 9 的备份和迁移模块  
备份和迁移模块可以备份数据库和文件。它还可以备份整个 Drupal 应用程序文件夹。该模块还具有加密功能,需要您下载一个名为 Defuse PHP 加密库的附加库 

composer require defuse/php-encryption

使用步骤:
安装备份和迁移模块。
创建一个私有目录并分配可写权限(类似于我们赋予文件文件夹的权限)。
在settings.php文件中设置私有目录的路径,以便模块可以使用它来存储备份。

备份和迁移模块的 UI

安装模块后,前往管理 -> 配置 -> 开发 -> 备份和迁移。您将看到 5 个选项卡:

备份– 您可以在其中进行快速备份。单击“立即备份”后,您将能够在“已保存的备份”选项卡中看到它。
恢复– 您可以在其中恢复较早的备份
保存的备份– 将列出您迄今为止所进行的所有备份 计划
–您可以在其中安排备份
设置– 包含此模块的常规设置和选项

时间表:
这是该模块最重要的功能之一。该模块提供了一个自动调度程序,您可以在其中安排备份。它在每次 cron 运行期间自动运行。您可以根据需要添加任意数量的计划,以备份数据库、公共或私有文件目录或整个站点。

查看所有时间表

配置时间表
您可以在此处添加或编辑时间表。您可以为日程表命名。有一个选项可以启用或禁用调度程序。选择各种备份源之一,例如数据库、公共或私有文件、目录或整个站点。或者在“设置”选项卡中添加您自己的。如果您同时备份数据库和文件,则可以为每种备份类型配置不同的备份目标。这意味着您可以为数据库备份选择不同的目标,为文件备份选择不同的目标,等等。该模块还提供了在“设置”选项卡中添加更多您选择的目的地的配置。频率_选项允许您指定希望以 cron 作业进行备份的频率。您可以从小时、分钟、天和周中选择选项。“要保留的数量”选项允许我们指定要保留的备份数量。一旦达到您设置的限制,它就会自动删除旧的备份,从而解决内存和存储问题。 

配置时间表

添加您的备份源

有什么限制吗?
可悲的是,是的。根据我的个人经验,我注意到当数据库大小增加时,我确实会遇到超时错误。这是一个问题,因为在某些服务器上,我们无法增加数据库执行的最大执行时间。我遇到的另一个问题是内存问题。在某些情况下,它可能会耗尽内存,具体取决于服务器的配置、数据库大小或备份的大小。当我们遇到这样的问题时,我们可以使用CLI方法。

CLI 备份方法 
在命令行界面方法中,我们可以使用这两种方法进行备份:

将 Drush 与 Crontab 结合使用
根据我们需要备份的内容使用本机命令和 Crontab。

使用 Drush 和 Crontab

场景:安排数据库备份在每天凌晨 3 点 –

格式:

0 3 * * * <path-to-drush> -r <path-to-drupal-root> sql:dump --result-file=<filename>.sql --gzip

示例:

0 3 * * * /var/www/html/drupal_demo/vendor/drush/drush/drush -r 
/var/www/html/drupal_demo sql:dump --result-file=/var/www/html/drupal_demo/db-dump-`date +%d%m%Y%H%M%S`.sql --gzip

使用本机命令和 Crontab

场景:同样的 - 安排数据库备份在每天凌晨 3 点 -

格式:

0 3 * * * mysqldump -u <mysql_username> -p <mysql_database_name> | gzip -c > <path-to-filename>.sql.gz

示例:

 
0 3 * * * mysqldump -u drupal -p drupal_demo | gzip -c > 
/var/www/html/drupal_demo/db-dump-`date +%d%m%Y%H%M%S`.sql.gz

场景:安排每天早上 5 点备份文件 -

格式:

 
0 5 * * * tar -czvf <path-to-backup-filename>.tgz <source>

例子:

 
0 5 * * * tar -czvf /home/ubuntu/backups/drupal_demo-files-`date +%d%m%Y%H%M%S`.tgz 
/var/www/html/drupal_demo/web/sites/default/files/

当您需要迁移网站时,备份不仅是必不可少的。定期备份是保护自己免受数据丢失的最佳方法。当Drupal 8(和 9)为您提供可以帮助自动备份的模块时,这不一定是一项乏味的工作。我们在这里讨论的备份和迁移模块以及 CLI 方法是我最推荐的两种自动备份方法。想知道我们如何为您的下一个项目实现如此令人惊叹的 Drupal 模块和功能?今天与我们的Drupal 专家交谈。

 

标签

  • 网站备份
  • 登录或注册以发表评论

评论

相关文章

drupal网站数据库备份和网站站点备份

文章标签

CSS
Excel
ubuntu
php
五笔
vim
Linux
HTML
command
drupal 7
composer
centos
Mysql
drupal 8
模块(module)
VPN
drush
JavaSrcipt
apache
drupal 9
英语
Drupal
SEO
nerdtree
network
果树种植
surround
drupal10
主题(theme)
phpmyadmin
ssh
权限
yum
二进制
声音
ssl
selinux
HTML5
用户
password
Dreamweaver
flameshot
颜色
翻译
uploadprogress
DDEV
视图(views)
firewalld
gzip
快捷键
kernel
xdebug
错误
ckeditor
mbstring
C语言
简介
源地址
php扩展
电脑基础
certbot
git
apt
压缩解压
表单
电子秤
httpd
WireGuard
邮件验证
breadcrumb
AI
superfish
diff
重定向
网站备份
摄影
tagclouds
docker
java
csharp
短信验证
adsense
drupal9
电脑技巧
simple_adsense
算法
RSS
youtube
版本号
JavaScript
badblocks
端口
cookie
VUE
网站运营
计算机基础
gimp
form
mod_expires 模块
nginx
zip
http验证
重定向,301
curl
netstat
input
赚钱
ip
dns
RFID
标签优化
drupal11
maven
drupal 11
npm
哈希值
字段
更多
RSS源
本站由阿里云强力驱动,幸运券优惠链接
Copyright © 2019 - 2021 你行网 版权所有  粤ICP备19072650号