Header Ads

Vultr $100

MEMPERBAIKI ERROR ESTABLISHING DATABASE CONNECTION PADA WORDPRESS


Memperbaiki Error Establishing Database Connection pada WordPress | Kesalahan dalam Establishing Database Connection adalah salah satu kutukan yang bisa disebabkan oleh berbagai alasan. Jika sampeyan sebagai newbie WordPress, hal ini sangat membuat frustrasi khususnya saat terjadi sendiri tanpa sampeyan mengubah dan mengutak-atik apapun didalam sistem. Salah satu website saya juga mengalami masalah ini kemarin tanpa saya tahu penyebabnya. Lumayan juga butuh sedikitnya lebih dari 20 menit untuk mendeteksi dan memperbaiki masalah. Sambil mencari-cari dan menemukan kemungkinan penyebabnya.

Pada artikel ini, saya akan menunjukkan cara memperbaiki kesalahan dalam dalam Establishing Database Connection di WordPress.

*Note: Sebelum membuat perubahan pada database, pastikan sampeyan memiliki backup yang cukup terutama SQL.

Mengapa sampeyan mendapatkan error ini?
Singkatnya, Anda mendapatkan kesalahan ini karena WordPress tidak dapat membuat koneksi database. Sekarang alasan mengapa WordPress tidak dapat membuat koneksi database bisa beragam. Bisa jadi kredensial login database Anda salah atau telah diubah. Bisa jadi server database anda tidak responsif. Bisa jadi database anda sudah rusak. Dalam pengalaman saya, sebagian besar kesalahan kali ini terjadi karena beberapa jenis kesalahan server namun mungkin ada faktor lain juga. Mari kita lihat bagaimana mengatasi masalah ini.

Apakah masalah terjadi untuk /wp-admin/ juga?
Hal pertama yang harus dilakukan adalah memastikan bahwa sampeyan juga mendapatkan kesalahan yang sama pada kedua front-end website dan back-end website (wp-admin). Jika pesan kesalahan sama pada kedua halaman "Error establish a database connection", lalu lanjutkan ke langkah selanjutnya. Jika Anda mendapatkan kesalahan yang berbeda pada wp-admin misalnya, sesuatu seperti "One or more database tables are unavailable. The database may need to be repaired", maka perlu memperbaiki database.

Sampeyan bisa melakukan ini dengan menambahkan baris berikut di file wp-config.php Anda. Tambahkan saja sebelum "That’s all, stop editing! Happy blogging" wp-config.php.

define('WP_ALLOW_REPAIR', true);

Setelah Anda selesai melakukannya, Anda dapat melihat pengaturannya dengan mengunjungi halaman ini:
http://www.yoursite.com/wp-admin/maint/repair.php


*Ingat, user tidak perlu masuk log untuk mengakses fungsi ini saat definisi ini ditetapkan. Karena maksud utamanya adalah untuk memperbaiki database yang rusak, User seringkali tidak bisa login saat database corrupt. Jadi setelah selesai memperbaiki dan mengoptimalkan database, pastikan untuk menghapusnya dari wp-config.php.

Jika perbaikan ini tidak memperbaiki masalah atau mengalami masalah dalam memperbaiki masalah, lanjutkan dengan solusi lain.

Cek kembali file WP-Config
WP-Config.php adalah salah-satu file terpenting di seluruh instalasi WordPress. Pada file inilah sampeyan menentukan rincian untuk WordPress agar bisa terhubung dengan database. Jika sampeyan mengganti kata sandi root, atau password pengguna database, maka sampeyan perlu mengganti file ini juga. Hal pertama yang harus selalu diperiksa adalah jika semuanya ada di file wp-config.php sampeyan sama.

define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');

Ingat nilai DB_Host sampeyan mungkin tidak selalu menjadi localhost. Bergantung pada tuan rumah, akan berbeda. Untuk host populer seperti HostGator, BlueHost, Site5, ini adalah localhost.
Beberapa menyarankan agar mereka memperbaiki masalah mereka dengan mengganti localhost dengan IP server. Adalah hal yang biasa melihat masalah seperti ini saat menjalankan WordPress di lingkungan server lokal. Sebagai contoh pada MAMP, nilai DB_Host ketika diubah menjadi IP dan bekerja.

define('DB_HOST', '127.0.0.1:8889');

Periksa Webhost (MySQL Server)
Seringkali sampeyan akan melihat Error ini karena koneksi database saat situs diserbu dengan banyak lalu lintas. jadi masalah ini pada dasarnya server host tidak dapat menangani beban (khususnya saat website berada di shared hosting). website akan menjadi sangat lambat, lemot, berat dan bahkan beberapa pengunjung disuguhi kesalahan dan error-error. Jadi hal terbaik yang harus dilakukan adalah lakukan kontak dengan penyedia hosting sampeyan dan tanyakan apakah server MySQL sampeyan responsif?

Bagi sampeyan yang ingin menguji apakah server MySQL berjalan, sampeyan bisa melakukan beberapa hal. Uji situs lain di server yang sama untuk melihat apakah mereka mengalami masalah ini. Jika mereka juga mendapatkan error yang sama, maka yang paling pasti ada yang salah dengan server MySQL. Jika sampeyan tidak memiliki situs lain di akun hosting yang sama ini, cukup masuk ke cPanel dan cobalah mengakses phpMyAdmin dan hubungkan database. Jika dapat terhubung, maka kita perlu memverifikasi apakah pengguna database memiliki izin yang cukup. Buat file baru yang disebut testconnection.php dan paste kode berikut di dalamnya:

<?php
$link = mysql_connect('localhost', 'root', 'password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

Pastikan mengganti username dan password. Jika berhasil terhubung, berarti itu berarti pengguna SQL sampeyan memiliki izin yang cukup, dan ada hal lain yang salah. Kembali ke file wp-config untuk memastikan semuanya sudah benar (re-scan typos).

Jika sampeyan tidak dapat terhubung ke database dengan membuka phpMyAdmin, berarti Anda tahu itu ada sesuatu yang salah dengan server SQL. Ini tidak berarti server MySQL sedang down. Ini bisa berarti bahwa pengguna SQL tidak memiliki cukup izin.

Dalam kasus server MySQL saya sedang berjalan. Semua situs lain di server bekerja dengan baik. Ketika saya mencoba akses ke phpMyAdmin baru ketahuan ada kesalahan:

#1045 – Access denied for user ‘foo’@’%’ (using password: YES)

So, disini saya perlu melakukan kontak pada layanan hosting yang saya gunakan untuk mengijinkan koneksi database.