Backup WordPress yang bener bukan cuma “copy semua file ke Google Drive lalu lupa.” Kamu butuh offsite storage terpisah dari hosting, versioning harian biar bisa rollback ke titik aman, restore testing rutin buat mastiin backup-mu beneran bisa dipulihkan, dan pemisahan antara backup database dan file. Tanpa empat hal ini, backup-mu cuma ilusi keamanan.
Bayangin ini: jam 2 pagi, kamu buka dashboard WordPress. Semua postingan blog hilang. Halaman utama diganti tulisan “Situsmu udah dienkripsi, bayar 0.5 BTC dalam 72 jam.”
Kamu nggak panik. Kamu senyum, buka penyedia offsite backup, klik restore. 17 menit kemudian, situsmu kembali normal. Penyerang nggak dapet apa-apa.
Perbedaan antara dua skenario di atas? Satu kata: strategi backup yang beneran teruji. Bukan backup ala kadarnya yang ternyata corrupt pas lagi dibutuhkan.

Kenapa Backup “Bawaan Hosting” Itu Jebakan yang Nggak Kamu Sadari
Mayoritas penyedia hosting menawarkan “free daily backup” sebagai fitur andalan. Kedengarannya aman, tapi ini jebakan klasik yang udah bikin banyak site owner nangis.
Logikanya simpel: backup yang disimpan di server yang sama dengan situsmu bukan backup, itu cuma copy. Kalau penyerang berhasil masuk ke server hosting-mu, mereka bisa sekaligus menghapus atau mengenkripsi folder backup juga. Skenario ini sering terjadi di shared hosting yang seluruh akunnya kena compromise.
Tambahan lagi, banyak hosting cuma nyimpen backup 7-14 hari. Kalau malware udah diam-diam nempel di situsmu selama 3 minggu sebelum ketahuan, backup bersihmu udah lama ketimpa versi terinfeksi.
Faktanya, menurut data Patchstack Security Statistics, rata-rata malware WordPress bertahan 40 hari sebelum terdeteksi. Backup 7 hari nggak akan nyelamatin kamu.
Aturan 3-2-1 yang Bikin Penyerang Frustasi
Aturan 3-2-1 udah jadi standar emas di dunia IT, tapi anehnya jarang diterapin di ekosistem WordPress. Padahal aturan ini sederhana dan nyawanya backup-mu:
- 3 copy data (satu live + dua backup)
- 2 media penyimpanan berbeda (misal: server lokal + cloud storage)
- 1 copy wajib offsite (di luar provider hosting-mu)
Implementasi praktis untuk WordPress: simpan satu backup lokal di server (buat restore cepat), satu backup di cloud S3-compatible storage seperti Backblaze B2 atau AWS S3, dan satu lagi di platform terpisah seperti Google Drive dengan API key terbatas.
Kunci offsite: credential cloud storage-mu jangan disimpan di file wp-config.php. Kalau penyerang dapet akses baca file itu, mereka bisa menghapus backup cloud-mu juga. Simpan di environment variable server atau gunakan plugin yang menyimpan credential di luar web root.

Database vs File: Dua Dunia yang Harus Kamu Backup Terpisah
Ini kesalahan fatal yang sering terjadi: memperlakukan backup database dan backup file WordPress sebagai satu kesatuan. Padahal keduanya punya karakteristik, frekuensi, dan ukuran yang beda total.
Database WordPress-mu (post, user, comment, setting) biasanya ukurannya kecil, antara 5-100MB untuk situs menengah. Tapi database berubah setiap menit setiap kali ada komen masuk, pesanan WooCommerce, atau user login. Di sisi lain, folder /wp-content/uploads/ bisa mencapai puluhan GB tapi jarang berubah setelah konten diunggah.
Strateginya: backup database harian (atau real-time via binlog untuk WooCommerce) dan backup file mingguan dengan incremental sync. Pisahin schedule-nya. Plugin seperti UpdraftPlus, BlogVault, atau Jetpack Backup udah support pemisahan ini.
- Database: backup harian, retensi 90 hari, simpan di 2 offsite storage
- File uploads: backup mingguan incremental, retensi 30 hari
- Core + plugin: backup setelah setiap update besar atau install plugin baru
Baca juga: Plugin-mu Bolong Tanpa Patch? Ini 7 Langkah Darurat Hadapi Zero-Day WordPress.
Versioning: Senjata Rahasia Melawan Ransomware
Bayangin skenario ini: ransomware menginfeksi situsmu tanggal 15 Maret. Kamu baru sadar tanggal 20 Maret. Kalau backup-mu cuma versi terbaru, semua backup dari tanggal 15-20 itu udah terenkripsi juga. Kamu butuh versi tanggal 14 Maret yang bersih.
Ini kenapa versioning itu kritis. Kamu butuh snapshot harian minimal 30 hari ke belakang, plus snapshot mingguan 90 hari ke belakang, plus snapshot bulanan untuk 12 bulan terakhir.
Teknik praktis: kombinasikan backup plugin-mu dengan fitur object versioning bawaan S3 storage. Saat Backblaze B2 atau AWS S3 mengaktifkan bucket versioning, setiap file yang dioverwrite tetep bisa di-restore ke versi sebelumnya. Bahkan kalau penyerang menghapus file backup-mu, versi sebelumnya masih ada di bucket history. Ini proteksi lapis ekstra yang hampir nggak ada biayanya.

Restore Testing: Backup yang Nggak Pernah Kamu Tes Sama dengan Nggak Punya Backup
Ada pepatah di dunia sysadmin: “Nobody cares about backups. People care about restores.”
Gue udah lihat terlalu banyak kasus di mana backup jalan otomatis tiap hari selama 6 bulan. Tapi pas dibutuhkan, restore gagal karena file corrupt, database dump nggak lengkap, atau credential API udah kadaluarsa. Jangan jadi orang itu.
Jadwalkan restore testing minimal sebulan sekali. Caranya nggak susah: bikin staging environment atau local WP instance (pakai Local by Flywheel atau DevKinsta), restore backup terbaru ke sana, cek apakah semua halaman, post, gambar, dan form masih berfungsi.
Checklist restore testing sederhana:
- Halaman utama ke-load tanpa error
- Semua post dan page muncul lengkap
- Media library bisa diakses, gambar muncul
- User bisa login
- Form kontak berfungsi
- Database prefix dan table relation utuh
Kalau satu aja gagal, backup-mu nggak bisa diandalkan. Perbaiki sekarang juga, bukan nanti pas kena hack.
Lihat juga: Situs WordPress-mu Bisa Dijebol dalam 7 Detik, Ini 7 Jalur yang Dipakai Penyerang.
Retention Policy: Kapan Backup Harus Dihapus dan Kenapa Itu Penting
Nyimpen backup selamanya bukan strategi bagus. Selain biaya storage bengkak, backup kuno juga bisa jadi celah hukum (data pelanggan lama yang udah nggak relevan) dan memperlambat proses restore karena harus nge-sortir ribuan versi.
Retention policy yang realistis untuk WordPress:
- Backup harian: simpan 30 hari terakhir
- Backup mingguan: simpan 12 minggu terakhir (Rolling 3 bulan)
- Backup bulanan: simpan 12 bulan terakhir
- Snapshot tahunan: simpan selamanya (opsional, untuk arsip historis)
Ini ngasih kamu jangkauan 12 bulan ke belakang tanpa bikin storage penuh. Sebagian besar plugin backup premium seperti BlogVault, Jetpack Backup, dan UpdraftPlus Premium udah support retention policy otomatis. Tinggal set, lalu biarin.

Kesimpulan: Backup Itu Asuransi, Bukan Biaya Tambahan
Setiap menit situsmu offline setelah kena hack, kamu kehilangan traffic, penjualan, dan reputasi. Backup yang bener itu investasi murah dibanding biaya recovery dari nol. Mulai dari hosting $2/bulan sampai managed WordPress $30/bulan, semua butuh strategi backup terpisah yang independen.
Singkatnya: pisahkan backup database dan file, terapkan aturan 3-2-1, aktifkan versioning, tes restore tiap bulan, dan hapus backup usang sesuai retention policy. Kalau semua ini udah jalan, kamu bisa tidur nyenyak meskipun situsmu jadi target penyerang.
Kamu juga bisa baca Sudah Ganti URL Login WordPress? Masih Bolong Kalau 7 Lapis Ini Kamu Abaikan buat nutup celah keamanan lain yang sering diabaikan.
FAQ: Backup WordPress yang Beneran Aman
Apa bedanya backup “bawaan hosting” sama backup offsite?
Backup bawaan hosting disimpan di server yang sama dengan situsmu. Kalau server kena hack, backup-mu ikut terhapus atau terenkripsi. Backup offsite disimpan di lokasi terpisah (cloud storage berbeda provider), jadi aman meskipun server utama kompromi total.
Berapa sering idealnya backup database WordPress dilakukan?
Minimal harian untuk semua situs. Untuk WooCommerce atau membership site dengan transaksi real-time, backup database sebaiknya setiap 6 jam atau pakai binary log backup yang merekam setiap perubahan query. Database berubah jauh lebih sering daripada file statis.
Plugin backup WordPress gratis udah cukup atau harus yang premium?
Plugin gratis seperti UpdraftPlus udah cukup untuk backup dasar ke Google Drive atau Dropbox. Tapi kalau kamu butuh incremental backup, backup real-time untuk WooCommerce, restore otomatis satu-klik, atau multi-site management, plugin premium seperti BlogVault atau Jetpack Backup (integrated) lebih worth it.
Apakah backup WordPress bisa melindungi dari ransomware?
Bisa, asalkan kamu punya versioning dan offsite storage. Sample sederhana: ransomware mengenkripsi file tanggal 15 Maret. Tanpa versioning, backup tanggal 16 Maret isinya file terenkripsi juga. Dengan versioning 30 hari, kamu bisa rollback ke snapshot 14 Maret yang masih bersih lalu restore dalam hitungan menit.
Gimana cara ngetes backup WordPress sebelum butuh restore beneran?
Bikin staging environment terpisah (pakai subdomain atau local server), restore backup terbaru kamu ke sana, lalu verifikasi: semua halaman muncul, gambar ke-load, user bisa login, dan form berfungsi. Lakukan tes ini setiap bulan. Kalau gagal, perbaiki konfigurasi backup-mu sekarang juga.
Sumber eksternal: WordPress.org Official Backup Guide dan AWS Blog: Backup WordPress to S3.



