php 如何将本地Laravel项目备份到云服务?

vdgimpew  于 2023-11-16  发布在  PHP
关注(0)|答案(3)|浏览(157)

我们正在进行一个项目,将在本地,我们要做一个每日备份,我们希望它是托管或服务器上。
谢谢

ar5n3qh5

ar5n3qh51#

使用mysql你可以运行mysqldump -u root -h localhost -pmypassword database | gzip -9 > database-db.sql.gz
在本地或服务器sudo apt-get install mysql-client上预安装
如果您使用的是像s3-s3-backups这样的云服务

s4chpxco

s4chpxco2#

第一步:安装和配置Laravel备份包首先,安装Laravel备份包。一个常用的包是spatie/laravel- backup。您可以使用Composer安装它:

composer require spatie/laravel-backup

After installation, publish the configuration file:

php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"

字符串
步骤2:配置备份包使用必要的备份配置更新.env文件:# .env

# Database settings
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_password

# Backup settings
BACKUP_CLEANUP_REPO=cleanups
BACKUP_SOURCE_FILES=your_project_directory
BACKUP_DESTINATION_PATH=your_backup_destination_path
BACKUP_DATABASE_NAME_ONLY=true 

Make sure to replace your_database, your_username, your_password, your_project_directory, and your_backup_destination_path with your actual database and project details.


步骤3:设置云存储在本示例中,我们将使用Amazon S3。创建一个S3存储桶并获取您的访问密钥、密钥和区域。
步骤4:安装AWS SDK使用Composer安装AWS SDK for Laravel:

composer require aws/aws-sdk-php


步骤5:配置AWS SDK使用您的AWS凭据和区域更新.env文件:# .env

AWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key
AWS_DEFAULT_REGION=your_region
AWS_BUCKET=your_s3_bucket
AWS_URL=https://your_bucket_url


步骤6:创建备份现在,您可以使用Laravel备份包创建备份:

php artisan backup:run


步骤7:上传备份到云存储您可以使用sync命令将备份上传到云存储:

php artisan backup:monitor

This command syncs your local backup directory with your cloud storage.


第8步:自动备份对于常规备份,您可以设置一个计划任务。将以下内容添加到您的App\Console\Kernel.php:

# App\Console\Kernel.php

use Spatie\Backup\Tasks\Backup\BackupJob;

protected function schedule(Schedule $schedule)
{
    $schedule->command(BackupJob::class)->daily()->at('02:00');
}

This example schedules a backup job daily at 2 AM.


第九步:测试备份和还原过程在依赖备份系统之前,请测试备份和还原过程,以确保它们按预期工作。

By following these steps, you can back up your local Laravel project to a cloud service like Amazon S3. Remember to adapt the instructions to your specific cloud storage service if you're using something other than S3.

euoag5mw

euoag5mw3#

This Laravel package会建立一个backup of your application。备份是一个zip档案,包含您指定目录中的所有档案,沿着您的数据库倾印。备份可以储存在any of the filesystems you have configured in Laravel上,就像Amazon S3一样。您也可以安装第三个-与Laravel Filesystem兼容的驱动程序,或者创建您自己的驱动程序。您可以清除旧备份并计划每天的备份任务,以完成了。

相关问题