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.phpdisks でバックアップの格納先を指定します。

<?php

return [

    'backup' => [

        (省略)
        
        'destination' => [

            (省略)

            /*
             * The disk names on which the backups will be stored.
             */
            'disks' => [
                'local',
            ],
        ],

        (省略)
        
    ],
];

config/filesystems.phpdisks で設定済みの内容から選択します。

https://docs.spatie.be/laravel-backup/v6/taking-backups/overview#determining-the-destination-of-the-backup

バックアップ実行

全て

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

参考

【エンジニア向け】仕事を見つける方法

転職する

転職エージェントを活用する

転職サイトの場合、自身でサイト上から企業を探す必要があります。 一方「レバテックキャリア」 などの転職エージェントの場合、エージェントが企業を紹介してくれます。エージェントが間に入ることにより、日程調整や、条件交渉などもサポートしてくれます。

転職ドラフトを活用する

転職ドラフト」は、 企業がITエンジニアをドラフトという形で指名するサービスです。年収が最初に提示されるなどのメリットがあります。 ただ、初回登録時にレジュメ作成が必要で、すでにエンジニア経験が豊富にあるエンジニア向けのサービスかと思います。 レジュメ作成が手間ですが、自身のキャリアを見直す機会になり、他の仕事探しにも役立つはずです。

エンジニア転職保証のあるスクールを活用する

ある程度、開発経験のあるかたであれば、独学で必要なスキルを身につけることができるはずです。ただ、別業種からエンジニアに転職したい場合など、1から独学で学ぶのはハードルが高いです。そういった方は、スクールの活用を検討しても良いと思います。 「TechAcademy」は、エンジニア転職保証コースを提供しています。給付金制度の対象講座として認定されているため、金銭面の負担も抑えることができます。

フリーランスとして活動する

レバテックフリーランス」「ITプロパートナーズ」「ギークスジョブ」は、フリーランスエージェントサービスです。 エージェントによって、支払いサイトなど細かい違いはありますが、まずは良い案件を見つけることが重要です。 登録自体は無料なので、複数エージェントに登録して、より多くの案件を紹介してもらうのがおすすめです。

logo
わくわくBank.
技術系の記事を中心に、役に立つと思ったこと、整理したい情報などを掲載しています。