Kako popraviti GREŠKU 1130 (HY000): Domaćinu nije dozvoljeno da se poveže na ovaj MySQL server


U ovom kratkom članku naučit ćete kako riješiti “GREŠKA 1130 (HY000): Host x.x.x.x nije dozvoljeno da se poveže na ovaj MySQL server” grešku u MySQL/MariaDB implementaciji baze podataka na Linux sistemu. Ovo je jedna od uobičajenih grešaka u povezivanju udaljene baze podataka s kojima se susreću korisnici.

Testno okruženje:

  • IP servera aplikacija: 10.24.96.5
  • IP servera baze podataka: 10.24.96.6

Naišli smo na grešku prilikom testiranja veze baze podataka od jednog od naših servera aplikacija na server baze podataka, koristeći mysql klijent kao što je prikazano.

mysql -u database_username -p -h 10.24.96.6

Greška ukazuje da hostu 10.24.96.5 sa kojeg se korisnik baze podataka povezuje nije dozvoljeno da se poveže na MySQL server. U ovom slučaju, moramo napraviti neke promjene na serveru baze podataka kako bismo omogućili korisniku da se poveže na daljinu.

Na serveru baze podataka, moramo provjeriti host s kojeg je korisniku iznad dozvoljeno da se poveže.

mysql -u root -p

Pokrenite sljedeće SQL naredbe da provjerite host korisnika:

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

Iz izlaza naredbe, korisniku je dozvoljeno samo da se poveže na server baze podataka sa localhost-a. Dakle, moramo ažurirati hostove korisnika na sljedeći način.

Pokrenite sljedeću naredbu GRANT da omogućite MySQL pristup udaljenom korisniku sa udaljenog hosta. Obavezno zamijenite “10.24.96.6 ” sa IP adresom udaljenog sistema i “database_password” lozinkom koju želite “database_username > ” za korištenje:

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

Da biste korisniku dali udaljeni pristup sa svih hostova na mreži, koristite sintaksu ispod:

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

Nakon što izvršite gore navedene promjene, pokušajte se još jednom daljinski povezati na MySQL server baze podataka. Veza bi trebala biti uspješna kao što je prikazano na sljedećem snimku ekrana.

mysql -u database_username -p -h 10.24.96.6

Nadamo se da vam je ovo rješenje pomoglo u rješavanju vaše greške Mysql udaljene veze. Ako imate bilo kakvih pitanja, obratite nam se putem obrasca za povratne informacije u nastavku.