cornford / backup
在 Laravel 中备份和恢复数据库的简单方法。
Requires
- php: >=7.2
- illuminate/config: ^6.0 || ^7.0 || ^8.0
- illuminate/console: ^6.0 || ^7.0 || ^8.0
- illuminate/support: ^6.0 || ^7.0 || ^8.0
- symfony/process: ^4.3
Requires (Dev)
- mockery/mockery: ^1.2.4
- phpmd/phpmd: ^2.7
- phpspec/phpspec: ^6.0
- phpunit/phpunit: ^8.4
- squizlabs/php_codesniffer: ^3.5
- dev-master
- v3.2.1
- v3.2.0
- v3.1.0
- v3.0.0
- v2.8.0.x-dev
- v2.8.0
- v2.7.0
- v2.6.0
- v2.5.0
- v2.4.0
- v2.3.1
- v2.3.0
- v2.2.1
- v2.2.0
- v2.1.1.x-dev
- v2.1.1
- v2.1.0
- v2.0.3.x-dev
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v1.4.0.x-dev
- v1.4.0
- v1.3.0.x-dev
- v1.3.0
- v1.2.1
- v1.2.0.x-dev
- v1.2.0
- v1.1.3.x-dev
- v1.1.3
- v1.1.2.x-dev
- v1.1.2
- v1.1.1.x-dev
- v1.1.1
- v1.1.0
- v1.0.1
- v1.0.0
- dev-develop
This package is auto-updated.
Last update: 2024-09-21 20:59:29 UTC
README
对于 Laravel 5.x,请查看 版本 2.7.0
对于 Laravel 4.x,请查看 版本 1.3.0
将 Backup 视为一个简单的数据库备份和恢复工具,它与 Laravel 的 artisan 命令行集成。包括以下功能:
Backup::export
Backup::restore
Backup::setBackupEngineInstance
Backup::getBackupEngineInstance
Backup::setBackupFilesystemInstance
Backup::getBackupFilesystemInstance
Backup::setEnabled
Backup::getEnabled
Backup::setPath
Backup::getPath
Backup::setCompress
Backup::getCompress
Backup::setFilename
Backup::getFilename
Backup::getWorkingFilepath
Backup::getRestorationFiles
Backup::getProcessOutput
安装
首先,通过 Composer 安装此软件包。编辑您的项目 composer.json
文件以添加 cornford/backup
依赖。
"require": {
"cornford/backup": "3.*"
}
接下来,从终端更新 Composer
composer update
此操作完成后,下一步是添加服务提供者。打开 config/app.php
,并在 providers 数组中添加一个新项。
Cornford\Backup\Providers\BackupServiceProvider::class,
下一步是引入门面。打开 config/app.php
,并在 aliases 数组中添加一个新项。
'Backup' => Cornford\Backup\Facades\BackupFacade::class,
最后,我们需要将配置文件引入您的应用程序。
php artisan vendor:publish --provider="Cornford\Backup\Providers\BackupServiceProvider" --tag=backup
这就完成了!您已经准备好开始使用了。
配置
您现在可以通过几个简单的步骤来配置 Backup。打开 config/backup.php
并根据需要更新选项。
enabled
- 启用备份。path
- 数据库备份路径,绝对路径或相对于 public 目录的路径,路径末尾需要加上斜杠。filename
- 当导出数据库时使用的数据库导出文件名。compress
- 启用使用 gzip 的备份压缩。需要 gzencode/gzdecode。processors
- 设置数据库引擎处理器位置,路径末尾需要加上斜杠。
用法
使用 Backup 类在控制器 / 模型 / 文件中非常简单,如下所示:
Backup:
这将为您提供以下功能:
- 导出
- 恢复
- 设置备份引擎实例
- 获取备份引擎实例
- 设置备份文件系统实例
- 获取备份文件系统实例
- 设置启用状态
- 获取启用状态
- 设置路径
- 获取路径
- 设置压缩
- 获取压缩
- 设置文件名
- 获取文件名
- 获取工作文件路径
- 获取恢复文件
- 获取进程输出
导出
export
方法允许在定义的备份位置创建数据库导出文件,可选的文件名选项。
Backup::export();
Backup::export('database_backup');
恢复
restore
方法允许将数据库导出文件恢复到数据库中,指定文件的完整路径。
Backup::restore('./database_backup.sql');
设置备份引擎实例
setBackupEngineInstance
方法允许使用实现 BackupEngineInterface 的自定义备份引擎实例对象。
Backup::setBackupEngineInstance(new BackupEngineMysql(new BackupProcess(new Symfony\Component\Process\Process), 'database', 'localhost', 3306, 'root', '', []));
获取备份引擎实例
getBackupEngineInstance
方法返回当前备份引擎实例对象。
Backup::getBackupEngineInstance();
设置备份文件系统实例
setBackupFilesystemInstance
方法允许使用实现 BackupFilesystemInterface 的自定义备份文件系统实例对象。
Backup::setBackupFilesystemInstance(new BackupFilesystemInstance);
获取备份文件系统实例
getBackupFilesystemInstance
方法返回当前备份文件系统实例对象。
Backup::getBackupFilesystemInstance();
设置启用状态
setEnabled
方法允许切换备份的开启或关闭状态,通过指定一个布尔值来表示状态。
Backup::setEnabled(true);
Backup::setEnabled(false);
获取启用状态
getEnabled
方法返回当前备份的开启状态,通过返回一个布尔值来表示状态。
Backup::getEnabled();
设置路径
setPath
方法允许设置备份的位置路径,指定一个相对或绝对路径作为字符串,路径末尾需要加上斜杠。
Backup::setPath('/path/to/directory/');
获取路径
getPath
方法返回当前绝对备份路径,以字符串格式呈现。
Backup::getPath();
设置压缩
setCompress
方法允许切换备份文件的压缩开启或关闭状态,通过指定一个布尔值来表示状态。
Backup::setCompress(true);
Backup::setCompress(false);
获取压缩
getCompress
方法返回当前压缩备份状态,通过返回一个布尔值来表示状态。
Backup::getCompress();
设置文件名
setFilename
方法允许设置备份文件名,以字符串格式指定。
Backup::setFilename('database_backup');
Backup::setFilename('backup-' . date('Ymd-His'));
获取文件名
getFilename
方法返回当前设置的备份文件名,以字符串格式呈现。
Backup::getFilename();
获取工作文件路径
getWorkingFilepath
方法返回当前设置的正在处理的项目的工作文件路径,以字符串格式呈现。
Backup::getWorkingFilepath();
获取恢复文件
getRestorationFiles
方法返回一个数组,包含给定路径内的所有恢复文件路径,可选的绝对路径可以设置为一个字符串。
Backup::getRestorationFiles();
Backup::getRestorationFiles('/path/to/directory/');
许可证
备份是开源软件,遵循 MIT 许可协议 开源。