sql >> Databasteknik >  >> RDS >> Mysql

Hur man åtgärdar ERROR 1130 (HY000):Värden får inte ansluta till denna MySQL-server

I den här snabba artikeln kommer du att lära dig hur du löser "FEL 1130 (HY000):Host x.x.x.x får inte ansluta till denna MySQL-server ”-fel i MySQL/MariaDB-databasdistribution på ett Linux-system. Detta är ett av de vanligaste felen i fjärrdatabasanslutningen som användare stöter på.

Testmiljö:

  • Applikationsserver-IP :10.24.96.5
  • Databasserver-IP :10.24.96.6

Vi stötte på felet när vi testade databasanslutning från en av våra appservrar till en databasserver med mysql klient som visas.

# mysql -u database_username -p -h 10.24.96.6

Felet indikerar att värden 10.24.96.5 som databasanvändaren ansluter från får inte ansluta till MySQL-servern. I det här fallet måste vi göra några ändringar i databasservern för att användaren ska kunna ansluta på distans.

På databasservern måste vi kontrollera den värd som användaren ovan har tillåtelse att ansluta från.

# mysql -u root -p

Kör följande SQL-kommandon för att kontrollera användarens värd:

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

Från kommandots utdata tillåts användaren endast ansluta till databasservern från localhost . Så vi måste uppdatera användarens värdar enligt följande.

Kör följande GRANT kommando för att aktivera MySQL-åtkomst för fjärranvändaren från en fjärrvärd. Se till att ersätta "10.24.96.6 " med IP-adressen för fjärrsystemet och "database_password ” till lösenordet som du vill ha ”database_username " att använda:

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";

För att ge en användare fjärråtkomst från alla värdar i ett nätverk, använd syntaxen nedan:

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

Efter att ha gjort ändringarna ovan, försök att fjärransluta till MySQL-databasservern en gång till. Anslutningen bör vara framgångsrik enligt följande skärmdump.

# mysql -u database_username -p -h 10.24.96.6

Vi hoppas att den här lösningen hjälpte dig att lösa ditt Mysql-fjärranslutningsfel. Om du har några frågor kontakta oss via feedbackformuläret nedan.


  1. Best Practices för PostgreSQL-säkerhet

  2. Hur man exporterar Oracle-frågeresultat till en JSON-fil när du använder SQLcl

  3. SQL-kommando för att lista och visa alla databaser i MySQL och MariaDB

  4. Personsökning med Oracle