sunucuhataları
teknik çözüm merkezi
Ara Giriş Yap Üye Ol
🏠 Ana Sayfa 📚 Kurulum Rehberleri
Kategoriler
🌐 Web Sunucuları 🐧 İşletim Sistemleri 📦 Sanallaştırma & VPS 🖥️ Kontrol Panelleri 🔒 SSL & Güvenlik 📝 CMS & Uygulamalar 🗄️ Veritabanı 📧 Mail Sunucusu 🗨️ Forum ℹ️ Hakkımızda 📧 İletişim
Giriş Yap Üye Ol
Ana Sayfa CMS & Uygulamalar WordPress Error Establishing a Database Connect...
📝 CMS & Uygulamalar

WordPress Error Establishing a Database Connection Hatası Çözümü

WordPress veritabanına bağlanamadığında bu hata oluşur. wp-config.php bilgileri, MySQL servisi ve izinler kontrol edilmelidir.

📅 17 Ocak 2025 👁 51 görüntülenme ⏱ 4 dk okuma
𝕏 Paylaş
📋 İçindekiler göster/gizle

WordPress Veritabanı Bağlantı Hatası Nedir?

WordPress'te "Error Establishing a Database Connection" (Veritabanı bağlantısı kurulamıyor) hatası, WordPress'in MySQL/MariaDB veritabanına bağlanamadığında gösterdiği kritik bir hatadır. Bu hata yalnızca ön yüzde değil, WordPress yönetici panelinde de görünür ve site tamamen erişilemez hale gelir.

WordPress'in çalışması için bir MySQL/MariaDB veritabanına sürekli bağlantı kurması gerekir. Tüm içerik, ayarlar, kullanıcı bilgileri ve yapılandırma verileri veritabanında saklanır. Bağlantı kurulamazsa WordPress hiçbir sayfayı gösteremez.

Bu hata iki farklı şekilde görünebilir:

# Ön yüz için:
Error establishing a database connection

# Yönetici paneli için:
One or more database tables are unavailable.
The database may need to be repaired.

Sorunun nereden kaynaklandığını anlamak için MySQL log dosyasını inceleyin:

sudo tail -50 /var/log/mysql/error.log

Olası Nedenler

  • wp-config.php dosyasında yanlış DB_HOST, DB_USER, DB_PASSWORD veya DB_NAME
  • MySQL/MariaDB servisi çalışmıyor (çökmüş veya durdurulmuş)
  • Veritabanı kullanıcısının gerekli izinleri yok
  • Sunucu kaynak tükenmiş (RAM doldu, MySQL kendini kapattı)
  • Veritabanı tabloları bozulmuş (corrupt)
  • MySQL bağlantı limiti (max_connections) dolmuş
  • Hosting planının veritabanı bağlantı sayısı aşıldı
  • Güvenlik eklentisi veya sunucu firewall'u MySQL portunu engelledi

Çözüm Adımları

1. MySQL Servisini Kontrol Etme ve Başlatma

İlk yapılacak şey MySQL/MariaDB servisinin çalışıp çalışmadığını kontrol etmektir:

sudo systemctl status mysql
# veya MariaDB için:
sudo systemctl status mariadb

Servis durduysa başlatın:

sudo systemctl start mysql
# Otomatik başlaması için:
sudo systemctl enable mysql

MySQL neden durduğunu anlamak için log'a bakın:

sudo journalctl -u mysql -n 50 --no-pager

2. wp-config.php Bilgilerini Kontrol Etme

WordPress kök dizinindeki wp-config.php dosyasını açın:

nano /var/www/html/wp-config.php

Şu değerleri kontrol edin:

define('DB_NAME', 'veritabani_adi');
define('DB_USER', 'kullanici_adi');
define('DB_PASSWORD', 'sifre');
define('DB_HOST', 'localhost');

Bilgilerin doğruluğunu test etmek için:

mysql -u kullanici_adi -p'sifre' -h localhost veritabani_adi -e "SHOW TABLES;"

3. Veritabanı Kullanıcı İzinlerini Kontrol Etme

MySQL'de kullanıcı izinlerini kontrol edin ve gerekirse yeniden verin:

mysql -u root -p
# MySQL komut satırında:
SHOW GRANTS FOR 'wp_kullanici'@'localhost';
# İzin vermek için:
GRANT ALL PRIVILEGES ON wp_veritabani.* TO 'wp_kullanici'@'localhost';
FLUSH PRIVILEGES;
EXIT;

4. WordPress Veritabanı Onarımı

Bağlantı sorunu değil, tablo bozulmasıysa WordPress'in yerleşik onarım özelliğini kullanın. wp-config.php'ye ekleyin:

define('WP_ALLOW_REPAIR', true);

Ardından tarayıcıda şu adrese gidin:

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

Onarım tamamlandıktan sonra bu satırı mutlaka wp-config.php'den kaldırın.

Komut satırından onarım:

mysqlcheck -u root -p --auto-repair --all-databases

5. MySQL Max Connections Sorununu Çözme

Bağlantı limiti dolmuşsa artırın:

nano /etc/mysql/mysql.conf.d/mysqld.cnf
# Ekleyin veya güncelleyin:
max_connections = 200

sudo systemctl restart mysql

6. cPanel'de Veritabanı Kullanıcı Yönetimi

cPanel kullanıcıları için:

  • cPanel → MySQL Databases bölümüne gidin
  • Add User To Database bölümünden kullanıcıyı veritabanına ekleyin
  • İzinlerde ALL PRIVILEGES seçin

Özet ve Önleyici Tedbirler

  • wp-config.php bilgilerini her değişiklik sonrası terminal ile test edin
  • MySQL için yeterli RAM ayırın; OOM killer MySQL'i öldürebilir
  • Düzenli veritabanı yedeği alın (WP-DB-Backup veya cPanel yedekleme)
  • Bağlantı havuzu (connection pooling) için ProxySQL veya PgBouncer kullanmayı düşünün
  • WordPress için WP-CLI ile veritabanı durumunu kontrol edin: wp db check

İlgili Makaleler

🤔 Bu kurulumda sorun mu yaşıyorsunuz?

Hata mesajınızı kopyalayıp foruma konu açın. Topluluğumuz size özel durumunuza göre yardımcı olacaktır.

🗨️ Foruma Katıl & Yardım Al
Etiketler: #wordpress #cpanel #mysql #5xx-hata

Yorumlar

Henüz yorum yok. İlk yorumu siz yapın!

Yorum Yap

Yorumunuz onaylandıktan sonra yayınlanır.