Laravel实现备份数据库以及下载和删除备份文件

话不多说,直接上代码

1 备份,定好路径,这里定义的路径是项目的storage/app/public/backup,然后直接调用下面方法即可

$dirPath = storage_path('app/public/backup/');
if (!file_exists($dirPath)) mkdir($dirPath);
$filePath = $dirPath.date('Y-m-d').'_'.date('H:i:s').'.sql';
$database = sprintf(
   'mysqldump -h%s -p%s -u%s -p%s %s > %s',
   env('DB_HOST'),
   env('DB_PORT'),
   env('DB_USERNAME'),
   env('DB_PASSWORD'),
   env('DB_DATABASE'),
   $filePath
);
$process = new Process($database);
$process->mustRun();

2 查询,下载,删除

Storage::disk('public')->allFiles('/backup');
Storage::disk('public')->download('/backup/xxxx.sql');
Storage::disk('public')->delete('/backup/xxxx.sql');

3 完

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!