WordPress Hosting Üzerinde “Error Establishing Database Connection” Hatası

WordPress Hosting Üzerinde “Error Establishing Database Connection” Hatası
Yazı Özetini Göster

WordPress Hosting Üzerinde “Error Establishing Database Connection” Hatası

“Error establishing database connection” hatası, WordPress’in veritabanına (MySQL/MariaDB) bağlanamadığını gösteren kritik bir hata mesajıdır. Site tamamen beyaz ekran verebilir ve yönetim paneline de erişim kesilebilir. Bu hata çoğunlukla yanlış veritabanı bilgileri, veritabanı servisinin durması, bozuk WordPress tabloları veya hosting tarafında kaynak sınırı nedeniyle ortaya çıkar. Bu rehberde, adım adım kontrol etmeniz gereken noktaları ve kalıcı çözümleri anlatıyoruz.

1. Hatanın Ne Anlama Geldiğini Doğru Okuyun

WordPress index.php çalışıyor, PHP yorumlanıyor ancak PHP, MySQL sunucusundan yanıt alamıyor demektir. Yani sorun çoğunlukla PHP tarafında değil, DB bağlantısı tarafındadır.

2. wp-config.php Dosyasını Kontrol Edin

İlk bakılması gereken dosya kökteki wp-config.php’dir. Şu alanları kontrol edin:

define( 'DB_NAME', 'veritabani_adi' );
define( 'DB_USER', 'veritabani_kullanicisi' );
define( 'DB_PASSWORD', 'sifre' );
define( 'DB_HOST', 'localhost' );  // bazı hostinglerde: 127.0.0.1 veya mysql.sunucu.com
  • Veritabanı adı cPanel → MySQL Databases ekranındaki adla birebir aynı olmalı (örn. siteadi_wp).
  • Kullanıcı adı/veritabanı ön eki (prefix) varsa onu da yazmalısınız.
  • DB_HOST bazı hostinglerde localhost değil özel bir hostname olabilir; panelde yazan değeri kullanın.

3. cPanel Üzerinden DB Kullanıcısını Yeniden Yetkilendirin

Yanlışlıkla yetki düşmüşse:

  1. cPanel → MySQL Databases
  2. “Add User to Database” bölümünden ilgili kullanıcıyı ilgili veritabanına ekleyin.
  3. “ALL PRIVILEGES” seçin ve kaydedin.

Bu adım, “Access denied for user” tipi hataları çözer.

4. Veritabanı Sunucusunun Çalıştığını Doğrulayın

SSH erişiminiz varsa:

mysql -u veritabani_kullanicisi -p

Giremiyorsanız ya kullanıcı adı/şifre yanlış ya da MySQL/MariaDB servisinde sorun vardır (paylaşımlı hostingde bu kısmı hosting destek bakar).

5. Veritabanı Onarımı (repair) Yapın

Bazen WordPress tabloları bozulur. Aşağıdaki satırı geçici olarak wp-config.php içine ekleyin:

define( 'WP_ALLOW_REPAIR', true );

Sonra tarayıcıdan:

https://alanadiniz.com/wp-admin/maint/repair.php

sayfasına gidip “Repair Database” deyin. İşlem bitince bu satırı wp-config’ten geri silmeyi unutmayın.

6. Fazla Trafik / Kaynak Limiti Sorunları

Paylaşımlı WordPress hostinglerde MySQL bağlantı sayısı (max_connections) dolduğunda da bu hata çıkar. cPanel → Metrics → Errors altında “Too many connections” görüyorsanız bu durumdur. Çözümler:

  • Cache eklentisi (LiteSpeed Cache, WP Super Cache) kullanın.
  • Saldırı veya bot trafiği varsa WAF/CDN (Cloudflare) ile kısın.
  • Kaynaklar yetmiyorsa VDS / daha güçlü hosting plana geçin.

7. DB_HOST Değerini Değiştirerek Test Edin

bazı hostinglerde:

  • localhost yerine 127.0.0.1
  • veya panelde yazan özel host: mysql.siteadi.com

şeklinde tanımlama gerekir. Yanlış host → 500 değil, tam olarak bu hatayı doğurur.

8. PHP Sürümü ve MySQL Sürümlerini Kontrol Edin

cPanel → Select PHP Version ekranından PHP sürümünüzü 7.4 / 8.0 / 8.1 gibi desteklenen bir sürüme getirin. Çok eski PHP ile yeni MySQL eşleşmeyebilir. Aynı şekilde, yeni WordPress sürümleri MySQL 5.5 gibi çok eski sürümlerde sorun çıkarabilir.

9. Güvenlik Eklentisi / firewall Kaynaklı Engeller

WordFence, iThemes Security veya hosting’in ModSecurity kuralları bazen DB erişimini kesmez ama PHP’de fatal error üretebilir. Sorunun eklenti kaynaklı olup olmadığını anlamak için:

wp-content/plugins

klasörünü geçici olarak plugins-old yapın ve tekrar deneyin.

10. Yedekten Geri Dönme

Eğer veritabanı gerçekten bozulduysa ya da yanlışlıkla silindiyse, cPanel → Backups → “Restore a MySQL Database” bölümünden en son yedeği geri yükleyin. Daha büyük projelerde harici backup (VDS + harici backup sunucusu) kullanmak daha güvenlidir.

Sonuç

“Error establishing database connection” hatası korkutucudur ama genellikle 3 şeyden biri çıkar: wp-config’te yanlış bilgi, MySQL servis/erişim sorunu veya bozuk DB tabloları. Bu üçü sırayla kontrol edildiğinde sorun çoğu zaman birkaç dakikada giderilir. Daha dayanıklı bir WordPress mimarisi için WordPress Hosting planlarında düzenli MySQL yedeği, yükseltilmiş bağlantı limiti ve LiteSpeed tabanlı cache katmanı kullanmak uzun vadede bu hatayı önemli ölçüde azaltacaktır.

Bir Yorum Yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Benzer Yazılar