Contact Us

Error Establishing a Database Connection: Arti & Solusi

Anggi Adi Putra

Mengatasi Error Establishing a Database Connection

Anda membuka website, dan yang muncul hanya satu kalimat di layar putih: “Error establishing a database connection”. Tidak ada menu, tidak ada konten, bahkan wp-admin pun menampilkan pesan yang sama. Wajar jika error establishing a database connection membuat panik, karena seluruh website seolah hilang.

Tenang dulu. Konten Anda biasanya masih aman di database. Pesan ini hanya berarti WordPress gagal terhubung ke database tersebut, dan dalam banyak kasus Anda bisa memperbaikinya sendiri lewat cPanel.

Di artikel ini, kami menjelaskan arti error ini, penyebab yang paling umum, dan lima langkah perbaikannya.

Penyebab paling sering adalah detail login database di wp-config.php yang tidak cocok dengan cPanel, database yang rusak, atau server database yang kelebihan beban. Mulailah dengan mencocokkan DB_NAME, DB_USER, DB_PASSWORD, dan DB_HOST di wp-config.php dengan data di menu MySQL Databases cPanel.

Arti error establishing a database connection

Error establishing a database connection berarti WordPress gagal terhubung ke database MySQL, tempat WordPress menyimpan semua artikel, halaman, pengaturan, dan data pengguna. Tanpa koneksi itu, WordPress tidak bisa menampilkan apa pun.

Bayangkan seorang kasir yang tiba-tiba tidak bisa membuka lemari arsip. Kasirnya ada, arsipnya juga masih utuh, tetapi kuncinya tidak cocok atau lemarinya macet. Hasilnya, kasir tidak bisa melayani siapa pun.

Penyebab paling umum

Detail login database tidak cocok. WordPress membaca nama database, username, password, dan host dari file wp-config.php. Jika salah satunya berbeda dengan data di hosting, misalnya setelah Anda mengganti password database atau memindahkan website, koneksi langsung gagal.

User database kehilangan hak akses. User database harus terhubung ke database dengan hak akses penuh. Hak akses ini kadang hilang setelah migrasi atau perubahan di cPanel.

Database rusak. Server yang mati mendadak, plugin bermasalah, atau update yang terputus bisa merusak tabel database.

Server database mati atau kelebihan beban. Pada shared hosting, satu server MySQL melayani banyak website sekaligus. Saat beban terlalu tinggi, server menolak koneksi baru.

Resource hosting habis. Lonjakan traffic bisa menghabiskan kuota CPU, memori, atau entry process akun hosting Anda.

Cara mengatasi error establishing a database connection

Kerjakan langkah berikut secara berurutan, mulai dari pemeriksaan yang paling cepat. Buat backup lebih dulu jika hosting Anda menyediakan fitur backup.

Langkah 1: Cocokkan detail database di wp-config.php dengan cPanel

Buka File Manager di cPanel, lalu buka file wp-config.php di folder utama website. Cari empat baris berikut:

define( 'DB_NAME', 'nama_database' );
define( 'DB_USER', 'user_database' );
define( 'DB_PASSWORD', 'password_database' );
define( 'DB_HOST', 'localhost' );

Setelah itu, buka menu MySQL Databases di cPanel dan bandingkan isinya. Pastikan nama database dan username sama persis, termasuk awalan nama akun cPanel (misalnya akunanda_wp). DB_HOST umumnya berisi localhost, tetapi beberapa hosting memakai alamat server lain. Cek dokumentasi hosting Anda jika ragu.

Jika Anda tidak yakin passwordnya benar, buat password baru untuk user database di menu MySQL Databases, lalu salin password yang sama ke baris DB_PASSWORD.

Langkah 2: Pastikan user database punya hak akses penuh

Masih di menu MySQL Databases, gulir ke bagian Add User to Database. Pilih user dan database yang tercantum di wp-config.php, klik Add, centang ALL PRIVILEGES, lalu simpan. Anda tetap aman mengulangi langkah ini meskipun user sudah terhubung sebelumnya.

Langkah 3: Perbaiki database yang rusak

Jika wp-admin menampilkan pesan “One or more database tables are unavailable”, besar kemungkinan ada tabel yang rusak. WordPress punya fitur perbaikan bawaan. Tambahkan baris berikut di wp-config.php:

define( 'WP_ALLOW_REPAIR', true );

Lalu buka alamat domainanda.com/wp-admin/maint/repair.php dan klik Repair Database. Setelah selesai, hapus kembali baris tersebut, karena siapa pun bisa membuka halaman perbaikan ini tanpa login.

Sebagai alternatif, buka phpMyAdmin di cPanel, pilih database WordPress, centang semua tabel, lalu pilih Repair table.

Langkah 4: Cek apakah server database aktif

Jika semua detail sudah benar tetapi error tetap muncul, masalahnya mungkin ada di server. Coba buka phpMyAdmin. Jika phpMyAdmin juga gagal terhubung, server MySQL kemungkinan sedang bermasalah. Cek halaman status hosting Anda atau hubungi tim support mereka.

Jika yang muncul justru tulisan 500 Internal Server Error, ikuti panduan WordPress error 500.

Langkah 5: Cek pemakaian resource hosting

Buka menu pemakaian resource di cPanel, misalnya Resource Usage. Jika grafik CPU, memori, atau entry process sering menyentuh batas, website Anda membutuhkan resource yang lebih besar daripada paket hosting sekarang. Optimasi plugin dan cache bisa membantu sementara, tetapi solusi jangka panjangnya adalah server yang lebih kuat.

Error muncul hanya sesekali

Jika error ini muncul lalu hilang sendiri beberapa menit kemudian, penyebabnya hampir selalu beban server, bukan pengaturan yang salah. Pola ini sering terjadi saat traffic naik, misalnya ketika promo berjalan atau saat banyak orang membagikan artikel Anda.

Pada titik ini, menambah plugin cache hanya menunda masalah. Website yang terus bertumbuh membutuhkan server dengan resource khusus. Managed VPS dari Diurusin.id memberi website Anda resource sendiri, tanpa perlu Anda mengurus servernya.

Error database di localhost atau XAMPP

Jika error ini muncul di komputer lokal saat Anda mengembangkan website, periksa tiga hal: MySQL di panel XAMPP sudah berjalan, tidak ada aplikasi lain yang memakai port 3306, dan DB_HOST di wp-config.php berisi localhost atau 127.0.0.1.

Cara mencegah error database terulang

  • Backup database secara rutin. Jika database rusak, backup menjadi jalan pemulihan tercepat.
  • Bersihkan database secara berkala. Revisi artikel, komentar spam, dan data sementara (transient) membuat database membengkak.
  • Catat setiap perubahan password database. Banyak kasus error ini muncul karena seseorang mengganti password di cPanel tanpa memperbarui wp-config.php.
  • Pilih hosting yang sesuai dengan traffic. Server yang terus kelebihan beban akan terus menolak koneksi.

FAQ

Apakah konten website hilang saat muncul error ini?

Biasanya tidak. Error ini hanya menandakan WordPress gagal terhubung ke database. Artikel, halaman, dan data Anda tetap tersimpan di dalamnya.

Apa arti pesan “One or more database tables are unavailable”?

Pesan ini menandakan ada tabel database yang rusak. Ikuti langkah 3 untuk memperbaikinya dengan fitur repair bawaan WordPress atau phpMyAdmin.

Apakah peretasan bisa memicu error ini?

Bisa, meski jarang. Peretas yang berhasil masuk kadang mengubah wp-config.php atau merusak database. Jika Anda menemukan perubahan yang tidak pernah Anda lakukan, baca tanda-tanda website WordPress yang terkena peretasan.

Masih error?

Jika Anda sudah mencoba kelima langkah dan website tetap gagal terhubung ke database, tim Diurusin.id bisa membantu memeriksanya. Jika masalahnya ada di resource hosting, pertimbangkan managed VPS.

Anggi Adi Putra

Sebagai Customer Support Specialist di Warnahost, saya berfokus pada memberikan pengalaman terbaik bagi setiap pelanggan dengan memastikan layanan hosting berjalan lancar, cepat, dan andal. Terbuka untuk networking, diskusi industri teknologi & customer experience, serta peluang kolaborasi.

Related Post

Tinggalkan komentar

Tinggalkan komentar

Punya masalah dengan website WordPress?

Anda cukup fokus pada bisnis, urusan website biar kami yang tangani.

Konsultasikan