laravel-backupを利用して、DBのバックアップを生成
laravel-backup
を利用すると ソースファイル
や データベース
のバックアップを簡単に作成することができます。ここでは laravel-backup
の基本的な利用方法について紹介します。
インストール
下記コマンドでパッケージをインストールします。
composer require spatie/laravel-backup
configファイル生成
下記コマンドを実行すると config/backup.php
が生成されます。
php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
$ php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
Copied File [/vendor/spatie/laravel-backup/config/backup.php] To [/config/backup.php]rovider"
Copied Directory [/vendor/spatie/laravel-backup/resources/lang] To [/resources/lang/vendor/backup]
Publishing complete.
設定
一部テーブルを除外する
DBのバックアップ対象外とするテーブルを指定することができます。
config/database.php
を編集します。
'mysql' => [
(省略)
'dump' => [
'excludeTables' => [
'table_to_exclude_from_backup',
'another_table_to_exclude'
]
]
],
上記のように excludeTables
で、対象外にするテーブルを指定します。
バックアップの格納先を変更する
config/backup.php
の disks
でバックアップの格納先を指定します。
<?php
return [
'backup' => [
(省略)
'destination' => [
(省略)
/*
* The disk names on which the backups will be stored.
*/
'disks' => [
'local',
],
],
(省略)
],
];
config/filesystems.php
の disks
で設定済みの内容から選択します。
バックアップ実行
全て
php artisan backup:run
でバックアップを取得できます。
$ php artisan backup:run
Starting backup...
Dumping database test-app...
Determining files to backup...
Zipping 6113 files...
Created zip containing 6113 files. Size is 157.5 MB
Copying zip to disk named local...
Successfully copied zip to disk named local.
Backup completed!
今回は、ローカルにバックアップファイルを生成するようにしています。
$ ls -lrt storage/app/TestApp/
total 163904
-rw-rw-r--. 1 502 xxxx 165151230 Jan 9 02:35 2019-01-09-02-34-10.zip
DBのみ
DBのみバックアップを取得したい場合、--only-dbオプション
を指定して実行します。
$ php artisan backup:run --only-db
Starting backup...
Dumping database test-app...
Determining files to backup...
Zipping 1 files...
Created zip containing 1 files. Size is 3.81 MB
Copying zip to disk named local...
Successfully copied zip to disk named local.
Backup completed!
$ ls -lrt storage/app/TestApp/
total 167804
-rw-rw-r--. 1 502 xxxx 165151230 Jan 9 02:35 2019-01-09-02-34-10.zip
-rw-rw-r--. 1 502 xxxx 3993593 Jan 9 02:38 2019-01-09-02-38-52.zip