MySQL, web uygulamaları ve diğer veri odaklı projeler için yaygın olarak kullanılan, İlişkisel Veritabanı Yönetim Sisteminin kısaltması olan popüler bir açık kaynak RDBMS’dir. LAMP/LEMP yığınının bir parçasıdır ve birçok popüler web sitesi ve uygulama veri depolamak için veritabanı sistemi olarak kullanır. Bununla birlikte, kullanıcılar zaman zaman MySQL sunucusuna bağlanamadıkları sorunlarla karşılaşırlar ve bu da normal çalışan uygulamaları bozabilir. MySQL sunucuya bağlanamıyor sorunlarının nasıl çözüleceğine ilişkin bu kılavuzda, bu sorunun yaygın nedenlerini inceleyecek ve MySQL bağlantı sorunlarını çözmenize yardımcı olacak adım adım çözümler sunacağız.
MySQL Sunucu Durumunu Kontrol Etme
Daha karmaşık sorun giderme işlemlerine geçmeden önce, MySQL sunucunuzun durumunu kontrol ederek başlayın. MySQL hizmetinin çalıştığından ve sunucu günlüklerinde kritik bir hata veya uyarı olmadığından emin olun. MySQL hizmet durumunu kontrol etmek için aşağıdaki komutu kullanabilirsiniz:
Hizmet çalışmıyorsa benzer bir çıktı alırsınız:
# systemctl status mysql
○ mariadb.service - MariaDB 10.6.12 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor prese>
Active: inactive (dead) since Fri 2024-01-12 23:41:21 UTC; 1s ago
MySQL hizmetini başlatın:
# systemctl start mysql
MySQL Bağlantı Noktası ve Ağ Yapılandırmasını Doğrulama
Bağlantılar için Varsayılan MySQL bağlantı noktası 3306’dır. MySQL sunucusunun doğru bağlantı noktasını dinleyecek şekilde yapılandırıldığından ve bağlantıları engelleyen herhangi bir güvenlik duvarı veya ağ sorunu olmadığından emin olun. MySQL yapılandırma dosyasında (genellikle /etc/mysql/my.cnf veya /etc/my.cnf adresinde bulunur) aşağıdaki satırları kontrol edin:
bind-address = 127.0.0.1
port = 3306
Bind-adresinin gerekli IP adreslerinden bağlantılara izin verdiğinden veya herhangi bir IP adresinden bağlantılara izin vermek için 0.0.0.0 olarak ayarlandığından emin olun. MySQL sunucusuna 3306 numaralı bağlantı noktasından bağlanabilirliği kontrol etmek için netcat komutunu da kullanabilirsiniz. Bunu şu komutu çalıştırarak yapabilirsiniz:
nc -zv 192.168.2.20 3306
192.168.2.20 yerine MySQL sunucusunun IP adresini kullanmalısınız. Bağlantı başarılı olursa, benzer bir çıktı almalısınız:
Connection to 192.168.2.20 3306 port [tcp/mysql] succeeded!
Bağlantı başarısız olursa, aşağıdaki gibi bir çıktı görürsünüz:
nc: connect to 192.168.2.20 port 3306 (tcp) failed: Connection refused
Ardından, MySQL sunucusunda oturum açmalı ve MySQL’in hangi bağlantı noktasını dinlediğini kontrol etmelisiniz.
MySQL Kullanıcı Ayrıcalıkları
Yanlış kullanıcı ayrıcalıkları MySQL sunucusuna başarılı bağlantıları engelleyebilir. Bağlanmaya çalışan kullanıcının gerekli ayrıcalıklara sahip olduğunu doğrulayın. Ayrıcalık vermek için aşağıdaki MySQL komutunu kullanabilirsiniz:
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost' IDENTIFIED BY 'password';
Veritabanı_adı, kullanıcı adı ve parolayı gerçek veritabanı adınız, kullanıcı adınız ve parolanızla değiştirin. Ardından komutu çalıştırabilirsiniz:
FLUSH PRIVILEGES;
Ardından MySQL kabuğundan çıkın ve sorun MySQL kullanıcı ayrıcalıklarıyla ilgiliyse artık bağlanabiliyor olmanız gerekir.
Ağ Sorunlarını Kontrol Edin
Ağ sorunları genellikle bağlantı sorunlarının bir nedeni olabilir. Ağ kesintisi olmadığından ve sunucuya istemci makineden erişilebildiğinden emin olun. Bağlanabilirliği kontrol etmek için sunucuya ping atın:
ping your_mysql_server_ip
Sorun varsa, ağ yapılandırmasını, güvenlik duvarı ayarlarını ve bağlantıları engelliyor olabilecek güvenlik gruplarını veya erişim kontrol listelerini (ACL’ler) kontrol edin.
MySQL Hata Günlüklerini İnceleme
MySQL günlükleri hatalar ve uyarılar hakkında değerli bilgiler sağlar. Bağlantı sorununa neden olan sorunları belirlemek için MySQL hata günlüklerini inceleyin. Hata günlükleri genellikle /var/log/mysql dizininde bulunur (tam konum için MySQL yapılandırmanızı kontrol edin) ve error.log olarak adlandırılır. Burada sorunu tanımlamanıza yardımcı olabilecek daha fazla bilgi bulabilirsiniz.
MySQL bağlantı sorunlarının çözülmesi, olası sorunların sistematik olarak tanımlanmasını ve ele alınmasını içerir. Sunucu durumunuzu kontrol ederek, bağlantı noktası ve ağ yapılandırmalarını doğrulayarak, kullanıcı ayrıcalıklarını onaylayarak, ağ sorunlarını araştırarak ve hata günlüklerini inceleyerek MySQL sunucuya bağlanamıyor sorunlarını etkili bir şekilde giderebilir ve düzeltebilirsiniz.