leupay adlı üyeden alıntı:
mesajı görüntüle
Sonuna eklemeyi unuttum. Chatgpt çözüm mesajıydı. Ama devamını yazmadım. Bilginiz vardır diye. Devamı şu şekilde.
Terminalden MySQL'e root olarak bağlan:
mysql -u root -p
Sonra şu komutu ver (uygun yerleri kendi bilgilerinizle değiştir):
GRANT ALL PRIVILEGES ON veritabani_adi.* TO 'veritabani_kullanicisi'@'localhost' IDENTIFIED BY 'sifre';
FLUSH PRIVILEGES;
Bu işlem, o kullanıcıya veritabanına bağlanma ve işlem yapma izni verir.
Terminalde bu komutu dene:
mysql -u veritabani_kullanicisi -p
Parola girince bağlanabiliyorsan, kullanıcı sorunsuz.
Sonra şu komutu ver:
USE veritabani_adi;
Eğer burada da hata yoksa kullanıcı ve veritabanı ilişkisi doğru kurulmuş demektir.
Nadir de olsa, bazı hosting ortamlarında güvenlik duvarı veya MySQL ayarları nedeniyle sadece belirli IP'lerden bağlantıya izin verilir. my.cnf dosyasında şöyle bir satır varsa:
ini
bind-address = 127.0.0.1
Bu sadece local bağlantıya izin verir. Eğer uzak bağlantı gerekiyorsa, bu ayarı 0.0.0.0 olarak değiştirmek gerekebilir. Ama shared hosting kullanıyorsan bu değiştirilemez.
Yukarıda dediğimiz gibi, kontrol et:
php -m | grep mysql
Sonuç çıkmıyorsa şu paketi kur:
sudo apt-get install php5-mysql
✅ 2. Veritabanı kullanıcısına yetki ver
Terminalden MySQL'e root olarak bağlan:
mysql -u root -p
Sonra şu komutu ver (uygun yerleri kendi bilgilerinizle değiştir):
GRANT ALL PRIVILEGES ON veritabani_adi.* TO 'veritabani_kullanicisi'@'localhost' IDENTIFIED BY 'sifre';
FLUSH PRIVILEGES;
Bu işlem, o kullanıcıya veritabanına bağlanma ve işlem yapma izni verir.
✅ 3. Kullanıcı gerçekten bağlanabiliyor mu, test et
Terminalde bu komutu dene:
mysql -u veritabani_kullanicisi -p
Parola girince bağlanabiliyorsan, kullanıcı sorunsuz.
Sonra şu komutu ver:
USE veritabani_adi;
Eğer burada da hata yoksa kullanıcı ve veritabanı ilişkisi doğru kurulmuş demektir.
✅ 4. Sunucu MySQL bağlantısını engelliyor olabilir mi?
Nadir de olsa, bazı hosting ortamlarında güvenlik duvarı veya MySQL ayarları nedeniyle sadece belirli IP'lerden bağlantıya izin verilir. my.cnf dosyasında şöyle bir satır varsa:
ini
bind-address = 127.0.0.1
Bu sadece local bağlantıya izin verir. Eğer uzak bağlantı gerekiyorsa, bu ayarı 0.0.0.0 olarak değiştirmek gerekebilir. Ama shared hosting kullanıyorsan bu değiştirilemez.
✅ 5. PHP mysql modülü yüklü mü?
Yukarıda dediğimiz gibi, kontrol et:
php -m | grep mysql
Sonuç çıkmıyorsa şu paketi kur:
sudo apt-get install php5-mysql
💡 Özet
- config.php dosyasındaki kullanıcı adı/parola/veritabanı ismini harf harf kontrol et.
- MySQL’de kullanıcıya yetki ver.
- Kullanıcının terminalden bağlanıp USE veritabani_adi; yapabildiğinden emin ol.
- php5-mysql yüklü olduğundan emin ol.



