ichie-benjamin / lara-backup-manager
laravel 框架的简单文件和数据库备份及还原管理器
Requires
- php: ^7.3|^7.4|^8.1|^8.2|^8.3
- illuminate/support: ~6|~7|~8|~9|~10
This package is auto-updated.
Last update: 2024-09-30 01:41:24 UTC
README
Lara-Backup-Manager 是一个灵活的 Laravel 扩展包,旨在简化 Laravel 应用的备份和还原过程。支持在 filesystem.php 配置中定义的各种存储选项,提供了灵活的数据备份管理方式。此外,该扩展包还允许自定义 HTTP 服务器集成存储,从而成为一个全面的数据安全保障方案。无论是创建常规备份还是无缝还原数据,Lara-Backup-Manager 都为 Laravel 项目提供了一个高效且用户友好的解决方案。
屏幕截图
需求
- PHP >= 7.3
- Laravel 6+
mysql
(用于还原数据库)mysqldump
(用于备份数据库)tar
(用于备份/还原文件)zcat
(用于提取数据库存档)
请确保上述二进制文件已添加到 PATH
环境变量中,或者您可以在配置文件中指定它们的完整路径。
安装
通过 Composer
$ composer require ichie-benjamin/lara-backup-manager
(可选)将外观添加到 config/app.php
中的 aliases
部分
'BackupManager' => IchieBenjamin\LaraBackupManager\Facades\BackupManager::class,
通过运行以下命令发布包的文件
$ php artisan vendor:publish --provider="IchieBenjamin\LaraBackupManager\ServiceProvider"
它应该发布 config/lara-backup-manager.php
配置文件和迁移文件。
运行 php artisan migrate
创建备份验证表(verifybackup
)。
最后,在 config/lara-backup-manager.php
文件中设置选项,并在您在 route
选项中指定的 URL(例如 http//yourapp.com/lara-backup-manager
)打开备份管理器,您现在应该看到 BackupManager 的界面。
有关备份设置的信息,请参阅 config/lara-backup-manager.php
文件。
设置自动备份
要在 app/Console/Kernel.php
文件中设置自动备份,请放置以下内容
$schedule->command('backupmanager:create')->daily(); $schedule->command('backupmanager:create --only="db"')->everySixHours();
此包提供 GUI 界面来管理备份,同时以下命令也是可用的
backupmanager:create Creates backup of files and/or database. backupmanager:create --only="db" Creates backup of database only. backupmanager:create --only="files" Creates backup of files only. backupmanager:list Shows list of backups taken. backupmanager:restore Restores a backup already taken.
将备份保存到其他磁盘
默认情况下,此包将备份保存到 local
磁盘,但您也可以使用 Laravel 文件系统的内置功能将备份保存到其他磁盘。假设您想要上传到具有 ftp 凭据的不同服务器,您需要将这些 ftp 凭据更新到 Laravel 的 config/filesystems.php
文件中的 ftp
磁盘设置下。一旦完成,在备份管理器配置文件(config/backupmanager.php
)中指定您的磁盘为 ftp
而不是 local
,例如
// define disk options
'disk' => 's3',
而不是
'disk' => 'local',
现在备份文件将保存到 s3 而不是本地。
免责声明
此包与 Laravel 或其任何分支机构无关、维护、授权、认可或赞助。
安全
如果您发现任何安全相关的问题,请通过电子邮件ichiebenjamin联系,而不是使用问题跟踪器。
致谢
许可证
有关更多信息,请参阅 许可证文件。