如何使用“laravel-backup”-带有Laravel Vapor的 Package

k4ymrczo  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(131)

我们正在使用Laravel Vapor来管理我们的laravel应用程序,并计划使用laravel-backup包为我们的生产环境创建自动数据库备份。
我测试了这个实现,并设法让它在我的Windows机器上工作(使用7.3.3版本)。
我将邮件配置设置为在备份运行(成功或失败)时收到通知,并将路径设置为mysqldump,如下所示:

'dump' => [
    'dump_binary_path' => 'C:\xampp\mysql\bin',
    'use_single_transaction',
    'timeout' => 60 * 5,
]

为了设置并运行vapor,我将destination.disk-config从local更改为s3s3

's3' => [
    'driver' => 's3',
    'key' => env('AWS_ACCESS_KEY_ID'),
    'secret' => env('AWS_SECRET_ACCESS_KEY'),
    'region' => env('AWS_DEFAULT_REGION'),
    'bucket' => env('AWS_BUCKET'),
    'url' => env('AWS_URL'),
    'endpoint' => env('AWS_ENDPOINT'),
],

我删除了dump_binary_path,因为我不知道在vapor的上下文中它指向哪里,所以我希望它位于默认位置,正如laravel-backup包的文档中提到的:
mysqldump用于备份MySQL数据库。pg_dump用于转储PostgreSQL数据库。如果这些二进制文件没有安装在默认位置,您可以在Laravel自己的database.php配置文件中添加一个名为dump. dump_binary_path的键。
我在kernel-文件中包含了backup命令

$schedule->command('backup:clean')->daily()->at('01:00');
$schedule->command('backup:run --only-db')->daily()->at('01:30');

然后用蒸汽将其展开。
不幸的是,它不工作。我没有收到电子邮件(既不成功也不失败),没有在我们的s3创建任何东西。

    • 是否有人使用过laravel-backup与蒸汽之前,并知道如何解决这个问题?我错过了什么?**

先谢了!

jogvjijk

jogvjijk1#

Laravel Vapor的支持者回答说:“我们的本机运行时未安装mysqldump。如果需要,您将需要运行Docker运行时并自行安装。还值得注意的是,Lambda上的最长执行时间为15分钟,因此,如果您的备份很大,您可能会遇到问题。”

相关问题