SevkiBilge

PHP'de PDO ile MySQL bağlantısı neden hata veriyor?

Gökçe42
· 4 gün önce · 2 görüntülenme
Arkadaşlar merhaba, uzun süredir PHP ile uğraşıyorum ama PDO kullanarak MySQL bağlantısı kurarken sürekli bir yerlere takılıyorum. Normalde mysqli ile hiç sorun yaşamazken, PDO'ya geçince "Could not find driver" veya "SQLSTATE[HY000] [2002] Connection refused" gibi hatalarla karşılaşıyorum. Özellikle localhost üzerinde çalışırken bu hatalar can sıkıcı oluyor. php.ini dosyasında pdo_mysql uzantısının aktif olduğunu kontrol ettim, extension_dir de doğru gözüküyor ama yine de çalışmıyor. Sizce bu sorun genelde nerden kaynaklanıyor? Apache'yi restartlamayı unuttuğum için mi oluyor, yoksa başka bir yerde hata mı yapıyorum?

Bir de bağlantı dizesinde host olarak "localhost" yerine "127.0.0.1" yazınca bazen işe yarıyor, bazen yaramıyor. Bu durumla ilgili net bir bilgisi olan var mı? Özellikle Windows'ta XAMPP kullanıyorum, bazı arkadaşlar MySQL'in Unix socket üzerinden bağlanması gerektiğini söylüyor ama ben TCP/IP üzerinden bağlanmaya çalışıyorum. Doğru yaklaşım hangisi? Ayrıca PDO'nun hata modunu exception olarak ayarladığımda bile detaylı bir hata mesajı alamıyorum, sadece genel bir hata dönüyor. Bu da sorunun kaynağını bulmayı zorlaştırıyor.

Son olarak, bağlantı parametrelerini doğru girdiğimden eminim ama yine de yetkilendirme hatası alıyorum. Kullanıcı adı ve şifre doğru, veritabanı adı da mevcut. Acaba PDO'nun farklı bir sürümünde mi bir değişiklik oldu? Yoksa MySQL 8 ile gelen caching_sha2_password kimlik doğrulama eklentisiyle mi ilgili? Benzer sorunu yaşayan var mı, çözüm için ne önerirsiniz? Paylaşırsanız sevinirim, çünkü bu hata yüzünden projeyi ilerletemiyorum.
0 yanıt

Henüz yanıt bulunmuyor. İlk yanıtlayan siz olun!

Yanıt yazmak için giriş yapın.