phpMyAdmin “Erişim engellendi” hatası nasıl çözülür? (Access denied)

Hata Tanımı

phpMyAdmin, web tabanlı bir MySQL yönetim aracıdır ve kullanıcıların veritabanlarına kolay erişim sağlar. Ancak, kullanıcıların phpMyAdmin arayüzüne giriş yapmaya çalıştıklarında “Erişim engellendi” (Access denied) hatası ile karşılaşmaları yaygın bir durumdur. Bu hata, genellikle kullanıcı adı, kullanıcı yetkileri veya yapılandırma dosyalarındaki sorunlardan kaynaklanır.

Kullanıcı Adı ve Şifre Kontrolleri

Erişim engeli hatası genellikle yanlış kullanıcı adı veya şifre ile giriş yapılmasından kaynaklanır. Kullanıcı adının ve şifrenin doğru olduğundan emin olunmalıdır. MySQL veritabanı erişimleri, phpMyAdmin’den bağımsız olarak ayarlandığı için, MySQL sunucusunda ilgili kullanıcı bilgilerinin kontrol edilmesi gerekir.

MySQL’e terminal veya ilgili bir istemci aracılığıyla bağlanarak şu komut kullanılabilir:

“`sql
SELECT User, Host FROM mysql.user;
“`

Bu sorgu, mevcut kullanıcıları ve erişim sağladıkları host bilgilerini listeleyecektir. Giriş yapmaya çalışılan kullanıcı adı ve host bilgisi doğru mu kontrol edilmelidir.

Kullanıcı Yetkilerinin Kontrolü

Erişim engeli, ilgili kullanıcıya yeterli yetki verilmemiş olması durumunda da meydana gelebilir. Kullanıcının veritabanına erişebilmesi için yeterli izinle yetkilendirilmiş olması gerekmektedir. Yetkileri kontrol etmek için şu komut kullanılabilir:

“`sql
SHOW GRANTS FOR ‘kullanici_adi’@’host’;
“`

Eğer kullanıcıya yetki verilmemişse, uygun yetkilerin verilmesi gerekir. Aşağıdaki komut ile gerekli yetkiler atanabilir:

“`sql
GRANT ALL PRIVILEGES ON . TO ‘kullanici_adi’@’host’ IDENTIFIED BY ‘sifre’ WITH GRANT OPTION;
“`

Bu komut, tüm veritabanlarına erişim yetkisi sağlar. Ancak güvenlik açısından, ihtiyaç duyulan veri tabanı veya tablolarına özgü daha sınırlı yetkiler tercih edilmelidir.

phpMyAdmin Yapılandırma Dosyası Kontrolleri

phpMyAdmin’in yapılandırma dosyasında (`config.inc.php`) bazı ayarlar doğru tanımlanmamışsa da bu hata ortaya çıkabilir. Bu dosya genellikle phpMyAdmin kurulum dizininde bulunur. Burada `$cfg[‘Servers’][$i][‘user’]` ve `$cfg[‘Servers’][$i][‘password’]` satırlarının doğru şekilde ayarlandığını kontrol etmek gerekir.

Yapılandırma dosyasında belirtilen kullanıcı adı ve şifrenin MySQL sunucusundaki bilgiler ile uyumlu olması şarttır. Aşağıda örnek bir yapılandırma dosyası ayarı verilmiştir:

“`php
$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;
$cfg[‘Servers’][$i][‘user’] = ‘kullanici_adi’;
$cfg[‘Servers’][$i][‘password’] = ‘sifre’;
“`

Bu ayarların doğru yapılmış olması gerekmektedir.

MySQL Sunucu Durumu

MySQL sunucusunun çalıştığından emin olunmalıdır. phpMyAdmin, MySQL sunucusuna erişim sağlamak için bu sunucunun aktif olması gerektiğinden, MySQL sunucusunun durumunu kontrol etmek için aşağıdaki komut kullanılabilir:

“`bash
systemctl status mysql
“`

Eğer sunucu durdurulmuşsa, aşağıdaki komut ile başlatılabilir:

“`bash
systemctl start mysql
“`

Firewall ve Güvenlik Duvarı Ayarları

Sunucu üzerinde kullanılan firewall ayarları da erişimi engelleyebilir. Eğer MySQL sunucusu dışarıdan erişime kapatılmışsa, bu durum phpMyAdmin üzerinden bağlantı kurmaya çalıştığında “Erişim engellendi” hatasına neden olabilir. Firewall ayarlarının kontrol edilmesi ve MySQL portunun (genellikle 3306) açık olduğundan emin olunması gerekmektedir.

Hatalı IP Adresi veya Host Ayarları

phpMyAdmin kullanıcıları, MySQL sunucusuna erişimi sağlamak için kullanılacak IP adresinin doğru şekilde yapılandırıldığından emin olmalıdır. Ayrıca, `bind-address` ayarının MySQL sunucu yapılandırma dosyasında doğru şekilde ayarlanmış olması gerekmektedir. Aşağıdaki dosyadaki ayar kontrol edilmelidir:

“`ini
bind-address = 127.0.0.1
“`

Eğer MySQL sunucusu dışarıdan erişime açıksa, bu değer `0.0.0.0` veya ilgili sunucunun IP adresi olmalıdır.

Son Kontroller

Tüm kontroller yapıldıktan sonra, phpMyAdmin’e yeniden giriş yapılmalı ve hatanın devam edip etmediği kontrol edilmelidir. Eğer sorun hala devam ediyorsa, hata günlükleri detaylı bir şekilde incelenmelidir. MySQL ve web sunucusu (Apache veya Nginx) hata günlükleri, sorunun kaynağını belirlemede yardımcı olabilir.

phpMyAdmin üzerinden veritabanı yönetimi esnasında karşılaşılan erişim hataları, çoğu zaman yanlış yapılandırmalar veya yetki eksikliklerinden kaynaklanmaktadır. Yukarıda belirtilen adımlar, sorunun çözümüne yönelik genel bir rehber olarak kullanılabilir.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR