Database Menengah

Backup & Restore Database MySQL/MariaDB

Lindungi data dengan strategi backup database yang benar.

Data adalah aset paling berharga di server. Backup rutin adalah keharusan, bukan opsional.

Backup Satu Database

mysqldump -u user -p nama_database > backup_nama_database.sql

Backup Semua Database

mysqldump -u user -p --all-databases > backup_semua.sql

Restore Database

mysql -u user -p nama_database < backup_nama_database.sql

Backup Otomatis dengan Cron

Buat skrip /root/backup-db.sh:

#!/bin/bash
TIMESTAMP=$(date +"%Y-%m-%d_%H%M")
mysqldump -u backupuser -p'*****' nama_database > /backup/db_$TIMESTAMP.sql
find /backup -name "*.sql" -mtime +7 -delete

Jadwalkan setiap jam 2 pagi:

crontab -e
0 2 * * * /root/backup-db.sh

Tips

  • Simpan backup di media lain, bukan hanya di server yang sama.
  • Uji restore secara berkala — backup yang tidak bisa direstore bukanlah backup.
  • Gunakan akun MySQL khusus dengan hak SELECT, LOCK TABLES untuk backup.