HATA 1130 (HY000) Nasıl Düzeltilir: Ana bilgisayarın bu MySQL sunucusuna bağlanmasına izin verilmiyor


Bu kısa makalede, bir Linux sisteminde MySQL/MariaDB veritabanı dağıtımında "ERROR 1130 (HY000): Host x.x.x.x'in bu MySQL sunucusuna bağlanmasına izin verilmiyor" hatasını nasıl çözeceğinizi öğreneceksiniz. Bu, kullanıcıların karşılaştığı yaygın uzak veritabanı bağlantı hatalarından biridir.

Test ortamı:

  • Uygulama Sunucusu IP'si: 10.24.96.5
  • Veritabanı Sunucusu IP'si: 10.24.96.6

Gösterildiği gibi mysql istemcisini kullanarak uygulama sunucularımızdan birinden bir veritabanı sunucusuna veritabanı bağlantısını test ederken hatayla karşılaştık.

mysql -u database_username -p -h 10.24.96.6

Hata, veritabanı kullanıcısının bağlandığı 10.24.96.5 ana bilgisayarının MySQL sunucusuna bağlanmasına izin verilmediğini gösterir. Bu durumda kullanıcının uzaktan bağlanmasını sağlamak için veritabanı sunucusunda bazı değişiklikler yapmamız gerekir.

Veritabanı sunucusunda, yukarıdaki kullanıcının bağlanmasına izin verilen ana bilgisayarı kontrol etmeliyiz.

mysql -u root -p

Kullanıcının ana bilgisayarını kontrol etmek için aşağıdaki SQL komutlarını çalıştırın:

MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

Komutun çıktısına göre, kullanıcının yalnızca localhost'tan veritabanı sunucusuna bağlanmasına izin verilir. Bu yüzden kullanıcının hostlarını aşağıdaki gibi güncellememiz gerekiyor.

Uzak ana bilgisayardan uzak kullanıcının MySQL erişimini etkinleştirmek için aşağıdaki GRANT komutunu çalıştırın. “10.24.96.6” ifadesini uzak sistemin IP adresiyle ve “database_password” ifadesini de istediğiniz şifre olan “database_username ” ile değiştirdiğinizden emin olun. ” kullanmak için:

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.5' IDENTIFIED BY 'database_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

Bir kullanıcıya ağdaki tüm ana bilgisayarlardan uzaktan erişim vermek için aşağıdaki sözdizimini kullanın:

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.%' IDENTIFIED BY 'database_password';

Yukarıdaki değişiklikleri yaptıktan sonra MySQL veritabanı sunucusuna uzaktan bağlanmayı bir kez daha deneyin. Bağlantı aşağıdaki ekran görüntüsünde gösterildiği gibi başarılı olmalıdır.

mysql -u database_username -p -h 10.24.96.6

Bu çözümün Mysql uzaktan bağlantı hatasını çözmenize yardımcı olacağını umuyoruz. Herhangi bir sorunuz varsa aşağıdaki geri bildirim formunu kullanarak bize ulaşın.