Program Resource

開発者向け各種コード、アルゴリズム、リソース情報ライブラリ もしくはねふぁの覚え書き

Laravel/vueのちょっとした事の覚え書き。Laravel 8.xで作業した際の情報。

定期的にバックアップを行う方法。詳細は下記サイトに。要点だけピックアップ。

https://helog.jp/laravel/db-backup/

https://qiita.com/Takuma_Ikeda/items/1323e5a6bea51860ed57

パッケージをインストール

sudo apt-get install php-zip
composer require spatie/laravel-backup
php artisan vendor:publish –provider=”Spatie\Backup\BackupServiceProvider”

configディレクトリ以下にbackup.phpが生成される。backup.phpのnameを変更しておかないと日本語だと化ける。

'name' => 'backup', //env('APP_NAME', 'laravel-backup'),

バックアップファイルは storage/app/backup に生成、dbのリストアは

mysql -uusername -ppassword dbname < mysql-dbname.sql

laravelのタスクスケジューラーで定期dbバックアップ。日々全体、毎時DBのみの例。

/app/Console/Kernel.php

protected function schedule(Schedule $schedule)
{
        $schedule->command('backup:run --disable-notifications')->daily();
        $schedule->command('backup:run --disable-notifications --only-db')->hourly();
}

crontabも設定

crontab -e

* * * * * cd /home/sample/Laravel_app/subfolder && php artisan schedule:run >> /dev/null 2>&1

Print Friendly, PDF & Email