Mozunote.com - Akhirnya setelah lama pandemik dan ekonomi dunia sedang turun akibat perang dagang dan perang bom di eropa sana, kali ini say amau bikin auto backup file dan database dari server ke google drive, sebenerny aini permintaan temen yang file nya habis gara-gara storage server di tempat dia bekerja rusak dan file nya ga bisa direcovery untuk itu kita manfaatin google drive yang unlimited untuk sebagai tempat kedua untuk backup data-data yang ada di server web kita.
Oke langsung saja ;
1. sediakan email dengan google drive yang lega untuk tempat kita upload file dari server, buka browser kemudian login.
2. Buka ssh linux centosnya install app penyambung ke google drivenya, berikut step-step nya
Install wget jika belum ada
Download Gdrive dari alamat berikut
Pindahkan GDrive kealamat /usr/sbin/drive untuk memudahkan
Set permission Folder agar dapat diakses
Selesai kita install google drive di server kita tahap selanjutnya adalah menghubungkan akun google drive kita dengan drive yang ada di server ini yang telah kita install.
masuk kembali ke ssh linux kemudian masukan printah drive maka akan muncul sebuah link yang cuku panjang , kamu buka link tersebut dibrowser untuk melakukan proses prijinan agar server bisa mengakses akun google drive mu;
contoh link :
Ingat agar sebelumnya kamu login terlebih dahulu ke akun google drive yang ingin digunakan.Ikuti intruksinya klik ijinkan kemudian copy paste kode yang di dapat dari browser kedalam ssh linux mu.
3. Tahap selanjutnya adalah kita menyiapkan folder dan script untuk memudahkan kita mengupload file kedalam google drive secara langsung.
pertama buka google drive kita di browser kemudian buat folder baru atau salin id folder di google drive yang akan kamu gunakan seperti contoh di bawah;
Simpan kode folder tersebut untuk digunakan nanti.
user = "nama user databse sql mu"
password = "password user databse sql"
host = "localhost atau sesuaikan "
Sekarang buat file bash.sh didalamnya kita akan pasangscript untuk upload ke google drive vi backup.sh
#!/bin/bash
# Full backup script
# export database
echo "Exporting database..."
mysqldump --defaults-extra-file=/root/config.cnf Nama_Database > /var/www/"dbku-backup-$(date '+%d-%m-%Y').sql"
echo "Database exported."
echo ""
# compress the directory
echo "Compressing directory..."
tar -zcvf "fileweb-backup-$(date '+%d-%m-%Y').tgz" /var/www/
echo "Directory compressed."
echo ""
# upload google drive rubah code 19Q7_z5DaYJ0dsadEX-VUfNsdgdfgdfr9zy-z dengan kode folder google drive mu
echo "Uploading to Google Drive..."
drive upload --file "fileweb-backup-$(date '+%d-%m-%Y').tgz" -p 19Q7_z5DaYJ0dsadEX-VUfNsdgdfgdfr9zy-z
echo "Uploaded to Google Drive."
echo
# menghpus file bekas kompress
echo "Clearing temporary files..."
sudo rm /var/www/"dbku-backup-$(date '+%d-%m-%Y').sql"
sudo rm "filewebku-backup-$(date '+%d-%m-%Y').tgz"
echo "Cleared temporary files."
echo ""
Perhatikan Script diatas, contoh kasus kita ingin membackup database sql di dalam direktori /var/www kemudian direktori www akan kita kompress sebelum di upload kedalam google drive. sesuaikan parameter script dengan Kondisi servermu seperti alamat dan nama nama.
4. membuat Cronjob atau scheduler agar file bach.sh dapat diekseskusi sesuai denga jadwal yang kita buat. masukan perintah crontab -e dan masukan kode berikut
# m h dom mon dow command
0 1 25 * * /root/backup.sh
setelah selesai kemudian simpan
rencananya setiap tgl 25 jam 1 malam atau sebulan sekali script backup akan dieksekusi dengan demikian backup web dilakukan secar aotomatis sebulan sekali.
Jika ada masalah akses cronjob ke file backup sh yang berada kamu simpan di root folder, kita bisa menambahan path nya di file backup.sh sperti berikut, simpan di baris paling atas
HOME=/root
LOGNAME=root
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
LANG=en_US.UTF-8
SHELL=/bin/sh
PWD=/root
Terakhir cek di dalam folder google drive mu jika file-file hasil upload otomatis tersebut telah masuk maka sistem auto backup yang dibuat sudah berjalan dengan baik. sekian dari saya jika ada hal yang ingin ditanyakan atau ada kesalahan penulisan silahkan ajukan di dalam kolom komentar.