Pernah membuka website WordPress lalu muncul pesan “Error Establishing a Database Connection”?
Error ini cukup umum terjadi pada website WordPress dan menyebabkan halaman website tidak dapat ditampilkan dengan normal.
Pesan tersebut menunjukkan bahwa WordPress gagal terhubung ke database. Padahal, database merupakan bagian penting karena menyimpan berbagai data website seperti artikel, halaman, pengguna, pengaturan, komentar, dan data dari plugin.
Jangan langsung panik ketika mengalami masalah ini. Pada banyak kasus, error database WordPress dapat diperbaiki dengan melakukan pengecekan konfigurasi, kredensial database, server MySQL, hingga kondisi database itu sendiri.
Berikut adalah cara mengatasi Error Establishing a Database Connection WordPress sekaligus langkah debug yang bisa dilakukan secara bertahap.
Apa Penyebab Error Establishing a Database Connection?
Sebelum melakukan perbaikan, penting untuk mengetahui beberapa penyebab yang paling sering terjadi. Intinya berkaitan dengan database.
Baca juga: 5 Kode Snippet .htaccess untuk Keamanan WordPress Tanpa Plugin
Beberapa penyebabnya antara lain:
- Username database salah.
- Password database salah.
- Nama database salah.
- Database host tidak sesuai.
- User database belum memiliki akses ke database.
- Server MySQL atau MariaDB sedang bermasalah.
- Database mengalami kerusakan.
- Resource hosting seperti CPU atau RAM terlalu tinggi.
- File konfigurasi WordPress mengalami perubahan.
- Server hosting sedang mengalami gangguan.
Salah satu file terpenting yang perlu diperiksa adalah wp-config.php, karena file tersebut berisi informasi koneksi WordPress ke database.
Cara Debug Error Establishing a Database Connection WordPress
Daripada langsung mengubah banyak konfigurasi, sebaiknya lakukan proses debugging secara bertahap.
1. Aktifkan WordPress Debug
Langkah pertama adalah mengaktifkan mode debug WordPress agar kita bisa mendapatkan informasi error yang lebih jelas.
Buka file:
wp-config.php
File tersebut biasanya berada di folder utama instalasi WordPress.
Cari kode berikut:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', true );
Dengan konfigurasi tersebut, WordPress akan menampilkan informasi error dan menyimpan error ke file log.
File log biasanya berada di:
wp-content/debug.log
Setelah mengaktifkan debug, coba buka kembali website.
Perhatikan apakah muncul informasi tambahan mengenai database, MySQL, atau PHP.
Setelah proses debugging selesai, sebaiknya matikan kembali debug pada website production.
2. Periksa Database di Hosting
Selanjutnya login ke panel hosting seperti cPanel atau panel hosting lainnya.
Cari panel menu:
Databases > phpMyadmin

Pastikan database WordPress masih tersedia. Misalnya pada konfigurasi WordPress, lihat di file wp-config.php
define( 'DB_NAME', 'username_database' );
Pastikan database dengan nama tersebut benar-benar ada. Jika database tidak ditemukan, WordPress tentu tidak dapat melakukan koneksi.
Kalau database tidak muncul sama sekali, kemungkinan database terhapus. Jika masih ada cek bagian ini masih ada tidak di database
wp_posts
wp_options
wp_users
wp_usermeta
wp_terms
Jika benar database terhapus, silahkan import backup database Anda.
3. Cek Database User
Selanjutnya, jika database masih ada perlu dilakukan pengecekan pada Database User. Di cPanel, cari panel:
Databases > Manage My Databases
Scroll atau gulir ke bagian bawah hingga menemukan panel menu Database Users. Pastikan user database masih terhubung ke database.
Contohnya:
Database:
db_wp
User:
db_user
Pastikan db_user sudah ditambahkan ke db_wp dan memiliki ALL PRIVILEGES. Ini cukup sering menjadi penyebab setelah perubahan hosting atau restore website.
Jika Database users tidak di temukan, bisa buat baru dengan cara gulir ke bagian atas pada panel menu Add Database Users, kemudian arahkan ke database tujuan.

4. Tes database langsung
Karena database-nya ada, kita perlu memastikan PHP di server masih bisa connect ke MySQL.
Buat file: db-test.php
di folder WordPress sejajar dengan file wp-config.php
Tambahkan kode ini di dalam file db-test.php tadi
<?php
require_once __DIR__ . '/wp-config.php';
$connection = mysqli_connect(
DB_HOST,
DB_USER,
DB_PASSWORD,
DB_NAME
);
if (!$connection) {
die('DATABASE ERROR: ' . mysqli_connect_error());
}
echo 'DATABASE CONNECTION OK';
mysqli_close($connection);
Kemudian buka domain Anda seperti ini https://domainanda.com/db-test.php. Kalau muncul “DATABASE CONNECTION OK” berarti PHP → MySQL berhasil.
Kalau muncul “DATABASE ERROR: Access denied for user…”, berarti masalah username/password/privilege.
Selanjutnya, jika “DATABASE ERROR: Can’t connect to MySQL server…”, berarti masalah koneksi ke MySQL.
Kesimpulan
Error “Error Establishing a Database Connection” pada WordPress menunjukkan bahwa website tidak dapat terhubung dengan database MySQL.
Kondisi ini tidak selalu berarti database rusak atau hilang. Dalam beberapa kasus, seperti ketika user database terhapus atau tidak lagi memiliki akses ke database, WordPress tetap mencoba menggunakan kredensial lama sehingga koneksi ditolak.
Untuk mengatasinya, Anda dapat memeriksa keberadaan database, memastikan user MySQL masih tersedia dan memiliki ALL PRIVILEGES, kemudian menyesuaikan DB_NAME, DB_USER, DB_PASSWORD, dan DB_HOST pada file wp-config.php.
Pengujian koneksi menggunakan file PHP sederhana juga dapat membantu memastikan apakah masalah berasal dari kredensial database atau dari WordPress.
Dengan melakukan pengecekan secara bertahap, masalah koneksi database WordPress dapat ditemukan tanpa harus menghapus atau mengubah data yang tersimpan di dalam database.