Tutorial cara backup database di laravel 5.8 dengan spatie package

8 September 2019

Laravel

Tutorial cara backup database di laravel 5.8 dengan spatie package – Hallo, Salam sejahtera untuk kita semua, semoga para pembaca bisa terbantukan dengan tutorial kali ini.

[lwptoc title=”Daftar Isi”]

Kali ini saya ingin berbagi tentang bagaimana cara backup database di laravel versi 5.8, kenapa saya mencantumkan versi ? jawabanya karena percobaan yang saya gunakan menggunakan versi 5.8. dan OS Ubuntu dengan server LAMPP dan composer.

Tulisan kali ini berawal dari pengalaman saya mencari-cari bagaimana cara backup database yg cepat di laravel. Alhamdulilah ketemu caranya, salah satunya dari blog sebelah ini.

Panduannya simpel, tapi terkadang ada beberapa error kecil yang pada awalnya saya sangat merasa kebingungan. Akhirnya terpecahkan juga beberapa error yg tampil.

Tutorial cara backup database di laravel 5.8 dengan spatie package

Langsung saja saya berikut ini pandunannya :

  1. Download terlebih dahulu package dari spatie dengan cara menjalankan scrip ini :
    composer require spatie/laravel-backup
  2. Setelah itu buka file config/app.php , lalu tambahkan kode berikut ini :
    providers' => [
             ......
             Spatie\Backup\BackupServiceProvider::class,
             ......
    ]
  3. Jalankan perintah composer di bawah ini, tujuannya untuk mem publish configurasi baru , sehingga akan ada file baruĀ  config/backup.php.

    php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
  4. Sekarang kita coba tes backup database dengan cara :
    php artisan backup:run
  5. Jika proses berhasil, akan tampil seperti ini :
    ( file hasil backup bisa di cek di storage/app/laravelĀ )

    Starting backup...
    Dumping database itdivisi...
    Determining files to backup...
    Zipping 634 files...
    Created zip containing 634 files. Size is 1.92 MB
    Copying zip to disk named local...
    Successfully copied zip to disk named local.
    Backup completed!
    

Pembahasan Error

jika tampil error seperti ini :

Backup failed because The dump process failed with exitcode 127 : Command not found : sh: 1: mysqldump: not found

error tersebut dikarenakan tidak ditemukannya pengaturan mysqldump di file database.php
solusinya ubah dan tambahkan script berikut ini :

  'mysql' => [
            ...........................
            'dump' => [
          		   'dump_binary_path' => '/opt/lampp/bin', // only the path, so without `mysqldump` or `pg_dump`
          		   'use_single_transaction',
          		   'timeout' => 60 * 5, // 5 minute timeout
          		   //'exclude_tables' => ['table1', 'table2'],
          		   //'add_extra_option' => '--optionname=optionvalue',
                 'add_extra_option' => '--socket=/opt/bitnami/mysql/tmp/mysql.sock',
          	],
            ...........................

        ],

Jika ada error seperti ini :

 Symfony\Component\Debug\Exception\FatalThrowableError  : Class 'ZipArchive' not found

error tersebut karena package zip belum terinstall :
jalankan printah berikut ini :

sudo apt-get install php7.2-zip

*jangan lupa ubah versi php, sesuai dengan versi yg digunakan.

Jika error seperti ini :

Copying zip failed because: Expected response code 250 but got code "530", with message "530 5.7.1 Authentication required

error kita hiraukan saja, error ini terkait dengan mailserver di file .env
untuk menghilangkan errornya kita ubah MAIL_DRIVER menjadi nilai “log” :

MAIL_DRIVER=log

 

Demikian tutorial tentang Tutorial cara backup database di laravel kali ini semoga bermanfaat..

2 komentar

  • Tedy Siah berkata:

    Kak kalau terjadi error seperti ini gimana ya cara mengatasi nya?

    Your requirements could not be resolved to an installable set of packages.

    Problem 1
    – spatie/laravel-backup[6.16.0, …, v6.x-dev] require illuminate/console ^6.0|^7.0|^8.0 -> found illuminate/console[v6.0.0, …, 6.x-dev, v7.0.0, …, 7.x-dev, v8.0.0, …, 8.x-dev] but these were not loaded, likely because it conflicts with another require.
    – Root composer.json requires spatie/laravel-backup ^6.16 -> satisfiable by spatie/laravel-backup[6.16.0, …, v6.x-dev].

    Installation failed, reverting ./composer.json and ./composer.lock to their original content.

    Mohon bantuannya kak. Terima Kasih

Silahkan tulis komentar anda !

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

img
Laravel