Photo by Chris Yates on Unsplash
Cara Backup Database Laravel Secara Otomatis di cPanel Shared Hosting dan VPS
Melakukan backup data adalah salah satu tugas paling penting dalam menjaga web aplikasi. Backup database secara rutin adalah keharusan, namun melakukannya secara manual setiap hari terasa membosankan dan sering kali diabaikan oleh developer atau pemilik aplikasi. Jika Kamu mencari panduan langkah demi langkah untuk membuat backup database otomatis setiap hari, artikel ini akan menjelaskan caranya menggunakan cPanel shared hosting atau VPS.
Jadwal Backup Database Laravel
Untuk membuat backup database Laravel secara otomatis, ada tiga langkah utama yang harus dilakukan:
Install Laravel DB Backup Package
Atur Jadwal Backup di Laravel
Konfigurasi Jadwal di Server
1. Install Laravel DB Backup Package
Langkah pertama adalah menginstal package haruncpi/laravel-db-backup menggunakan perintah Composer berikut:
composer require haruncpi/laravel-db-backup
Lokasi Penyimpanan Backup
Local Disk:
storage/app/backups
S3 Bucket:
backups
Jika Kamu menggunakan S3, pastikan sudah mengonfigurasinya sebelum melanjutkan.
2. Atur Jadwal Backup di Laravel
Setelah package terinstal, langkah selanjutnya adalah mengatur jadwal backup di sisi aplikasi Laravel. Buka file app/Console/Kernel.php
, lalu tambahkan kode berikut di dalam metode schedule
:
protected function schedule(Schedule $schedule)
{
$schedule->command('db:backup')->twiceDaily(0, 12);
}
Catatan Penting:
Metode
twiceDaily
secara default dijalankan pada pukul 01:00 dan 13:00.Agar sesuai dengan waktu server atau cronjob di cPanel/VPS, Kamu perlu mengaturnya menjadi pukul 00:00 dan 12:00 (0,12).
Backup ke AWS S3
Jika ingin menyimpan backup di AWS S3, tambahkan s3
pada perintah Artisan. Berikut contoh kode lengkapnya:
protected function schedule(Schedule $schedule)
{
$schedule->command('db:backup s3')->twiceDaily(0, 12);
}
Metode Alternatif:
Kamu juga bisa menggunakan metode daily
untuk backup harian atau metode jadwal lain yang tersedia di Laravel Scheduler. Pastikan waktu jadwal aplikasi Kamu dan jadwal server sudah sinkron agar proses berjalan dengan lancar.
3. Konfigurasi Jadwal di Server
Setelah mengatur jadwal di Laravel, langkah terakhir adalah mengatur jadwal di sisi server, baik di cPanel shared hosting maupun VPS.
cPanel Shared Hosting
Pada cPanel, Kamu perlu menggunakan cronjob untuk menjalankan jadwal Laravel. Berikut langkah-langkahnya:
Login ke cPanel.
Pilih menu Cron Jobs.
Tambahkan cronjob dengan perintah berikut:
/usr/local/bin/php /home/jhonsmith/public_html/artisan schedule:run >> /dev/null 2>&1
Catatan:
Ganti
jhonsmith
dengan username cPanel milik Kamu.Perintah ini akan menjalankan scheduler Laravel setiap menit.
VPS Hosting
Jika menggunakan VPS, Kamu harus menentukan lokasi pasti dari file PHP dan Artisan. Contoh perintahnya adalah:
/usr/local/php72/bin/php site.com/artisan schedule:run >> /dev/null 2>&1
Jika ingin menjalankan perintah dari root direktori aplikasi, gunakan perintah berikut:
cd ~/site.com && /usr/local/php72/bin/php artisan schedule:run >> /dev/null 2>&1
Kesimpulan
Dengan mengikuti langkah-langkah di atas, Kamu dapat dengan mudah mengatur backup database Laravel secara otomatis di cPanel shared hosting maupun VPS. Hal ini akan sangat membantu mengamankan data aplikasi tanpa perlu melakukannya secara manual setiap hari. Jangan lupa untuk memastikan konfigurasi waktu server dan aplikasi Kamu sudah sesuai.
Bagikan artikel ini kepada orang lain jika Kamu merasa informasi ini bermanfaat!