WordPress, ELrolumnews — Website Anda sudah pakai cache, sudah kompresi gambar, sudah pasang CDN. Tapi kok masih lambat—terutama di halaman admin, pencarian, atau saat buka order? Masalahnya mungkin bukan di tampilan, tapi di database.
Artikel ini cocok untuk: Pemilik website WordPress yang sudah melakukan optimasi dasar (cache, gambar) tapi masih merasakan lambat—terutama di area dinamis seperti admin, search, atau e-commerce.
Database WordPress itu seperti gudang. Setiap kali Anda edit artikel, ganti tema, atau install plugin, ada “barang” yang masuk. Tapi tidak ada yang keluar. Lama-lama gudang penuh—dan mencari sesuatu di dalamnya butuh waktu lebih lama .
Di artikel ini, kita akan bahas dari nol: mengapa database bisa membengkak, cara membersihkannya dengan aman, hingga optimasi tabel. Semua langkah disertai peringatan dan tips agar tidak salah hapus.
Mengapa Database WordPress Membengkak?
Database yang baru diinstall ukurannya mungkin hanya beberapa MB. Tapi setelah 1-2 tahun beroperasi, ukurannya bisa membengkak 10-40 kali lipat. Ini penyebabnya:
| Sumber Sampah | Penjelasan |
|---|---|
| Revisi Artikel | Setiap kali simpan artikel, WordPress membuat revisi. Satu artikel bisa punya 20-50 revisi |
| Auto Draft | Draft otomatis saat menulis—tidak terhapus setelah publish |
| Transient Expired | Cache sementara dari plugin yang tidak terhapus otomatis |
| Komentar Spam & Trash | Spam dan komentar yang dihapus masih tersimpan di database |
| Orphaned Meta | Data meta dari artikel/user yang sudah dihapus |
| Sesi WooCommerce | Untuk e-commerce, tabel wc_sessions bisa tumbuh tak terbatas |
Dampak: Backup jadi berat, query jadi lambat, dan halaman admin terasa “berat” .
Kapan Database Perlu Dioptimasi?
Tidak perlu menunggu sampai website lambat parah. Tanda-tanda database perlu dioptimasi:
| Tanda | Penjelasan |
|---|---|
| Backup membengkak | File backup terus bertambah besar tanpa alasan |
| Halaman admin lambat | Terutama di daftar artikel atau pencarian |
| Query timeout | Beberapa plugin gagal load data |
| Database > 100MB | Untuk blog biasa, ini sudah besar |
💡 Tips Pro: Cek ukuran database di aaPanel > Database atau cPanel > MySQL Databases. Jika sudah ratusan MB untuk blog biasa, saatnya optimasi.
Peringatan Sebelum Mulai: Backup Dulu!
Ini langkah paling penting dan tidak boleh dilewatkan. Optimasi database melibatkan penghapusan data—dan kesalahan bisa berakibat fatal .
Cara Backup Database
Via phpMyAdmin:
Login ke phpMyAdmin
Pilih database website Anda
Klik Export → Go
Download file
.sql
Via Command Line (VPS):
mysqldump -u db_user -p db_name > backup-sebelum-optimasi.sql
Via Plugin:
Gunakan UpdraftPlus atau WP-Optimize untuk backup database .
⚠️ Peringatan Editor: Jangan lanjut sebelum backup selesai dan file-nya bisa diunduh. Backup yang tidak diverifikasi sama dengan tidak punya backup.
Langkah 1: Bersihkan Data Sampah (Manual)
Ada dua cara: manual via phpMyAdmin (lebih teknis) atau via plugin (lebih mudah).
1.1 Via phpMyAdmin (Manual)
Hapus Revisi Artikel:
DELETE FROM wp_posts WHERE post_type = 'revision';
Hapus Auto Draft:
DELETE FROM wp_posts WHERE post_status = 'auto-draft';
Hapus Komentar Spam:
DELETE FROM wp_comments WHERE comment_approved = 'spam';
Hapus Transient Expired:
DELETE FROM wp_options WHERE option_name LIKE '_transient_%' AND option_name LIKE '_transient_timeout_%';
Hapus Orphaned Post Meta (meta tanpa post induk):
DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL;
Query ini menghapus wp_postmeta yang tidak punya pasangan di wp_posts .
⚠️ Peringatan: Ganti
wp_dengan prefix database Anda jika berbeda. Backup dulu sebelum menjalankan query ini.
1.2 Via Plugin (WP-Optimize) — Rekomendasi untuk Pemula
WP-Optimize adalah plugin gratis yang paling populer untuk optimasi database—digunakan 800.000+ pengguna .
Cara Install:
Masuk ke Plugins > Add New
Cari “WP-Optimize”
Klik Install Now, lalu Activate
Masuk ke WP-Optimize > Database
Langkah Optimasi:
Preview dulu — Plugin akan menampilkan apa yang bisa dibersihkan
Pilih secara selektif — Jangan centang semua. Mulai dari yang aman:
✅ Revisi artikel
✅ Auto draft
✅ Trash posts
✅ Komentar spam & trash
✅ Transient expired
Hindari dulu (kecuali yakin):
⚠️ Orphaned post meta
⚠️ Unused tags
Klik Run optimization
💡 Tips Pro: Aktifkan scheduled cleanup untuk pembersihan otomatis mingguan. Cukup centang opsi “Enable scheduled clean-up and optimization” .
Langkah 2: Optimasi Tabel Database
Setelah data sampah dibersihkan, langkah berikutnya adalah optimasi tabel—semacam “defrag” untuk database.
2.1 Apa Itu Optimasi Tabel?
Ketika Anda menghapus data dari database MySQL, ruang yang tadinya dipakai tidak langsung dikembalikan. Tabel menjadi “berlubang” secara internal. OPTIMIZE TABLE akan:
Membangun ulang tabel
Mengembalikan ruang kosong
Mengoptimasi indeks
2.2 Cara Optimasi Tabel via phpMyAdmin
Buka phpMyAdmin
Pilih database
Centang semua tabel (atau hanya tabel WordPress)
Di dropdown With selected, pilih Optimize table
Tunggu proses selesai
2.3 Cara Optimasi Tabel via WP-CLI (VPS)
Jika Anda punya akses SSH:
wp db optimize
Perintah ini menjalankan OPTIMIZE TABLE untuk semua tabel WordPress .
2.4 Optimasi Tabel via WP-Optimize
Plugin WP-Optimize juga punya fitur ini. Di tab Database, cari opsi “Optimize database tables”. Tapi perlu dicatat: plugin ini menonaktifkan optimasi on-disk untuk tabel InnoDB—karena keterbatasan MySQL .
💡 Tips Pro: Jika tabel Anda menggunakan InnoDB (default modern), optimasi via phpMyAdmin atau WP-CLI lebih efektif daripada via plugin.
Langkah 3: Optimasi Lebih Lanjut (Level Expert)
3.1 Index MySQL for Speed
Plugin Index WP MySQL For Speed menambahkan indeks performa tinggi ke tabel inti WordPress. Ini sangat berguna untuk website dengan banyak konten .
Cara pakai:
Install & aktifkan plugin
Masuk ke Tools > Index MySQL
Klik Add Keys Now
Tunggu proses selesai
Peringatan: Proses ini bisa memakan waktu untuk database besar. Pastikan ada backup .
3.2 Monitor Slow Query
Untuk website yang lebih serius, aktifkan slow query log di MySQL untuk melihat query mana yang lambat:
slow_query_log = 1 long_query_time = 1 log_queries_not_using_indexes = 0
Ini membantu mengidentifikasi plugin atau query yang membebani database .
Kesalahan Umum dan Cara Menghindarinya
| Kesalahan | Akibat | Solusi |
|---|---|---|
| Tidak backup | Data hilang permanen | Backup dulu |
| Hapus semua sekaligus | Kehilangan data penting | Pilih selektif |
| Hapus orphaned meta sembarangan | Plugin kehilangan konfigurasi | Preview dulu |
| Tidak optimasi tabel | Ruang tidak kembali | Jalankan OPTIMIZE TABLE |
| Abaikan scheduled cleanup | Database cepat kotor lagi | Aktifkan auto-cleanup |
| Salah prefix database | Query gagal | Cek prefix di wp-config.php |
Optimasi database WordPress bukan opsional—ini bagian dari maintenance rutin. Kuncinya:
Backup dulu — jangan pernah skip
Bersihkan data sampah — revisi, auto draft, spam, transient
Optimasi tabel — kembalikan ruang yang terbuang
Gunakan plugin — WP-Optimize untuk pemula
Aktifkan auto-cleanup — biar tidak menumpuk lagi
Monitor performa — cek ukuran database secara rutin
Dengan database yang bersih, website Anda akan lebih responsif—terutama di halaman admin, pencarian, dan area dinamis lainnya. Backup juga jadi lebih ringan dan cepat.
Ingat: Database yang bersih adalah fondasi website yang cepat. Jangan hanya fokus pada tampilan—urus juga “gudang” di belakangnya.
Sudah siap membersihkan database WordPress Anda?
💬 Punya pengalaman optimasi database? Bagikan di kolom komentar!
(el)





