Kā novērst kļūdu 1130 (HY000): resursdatoram nav atļauts izveidot savienojumu ar šo MySQL serveri


Šajā īsajā rakstā jūs uzzināsiet, kā atrisināt kļūdu “ERROR 1130 (HY000): resursdatoram x.x.x.x nav atļauts izveidot savienojumu ar šo MySQL serveri” MySQL/MariaDB datu bāzes izvietošanā Linux sistēmā. Šī ir viena no izplatītākajām attālās datu bāzes savienojuma kļūdām, ar kurām sastopas lietotāji.

  • Lietojumprogrammu servera IP: 10.24.96.5
  • Datu bāzes servera IP: 10.24.96.6

Testējot datu bāzes savienojumu no viena no mūsu lietojumprogrammu serveriem uz datu bāzes serveri, radās kļūda, izmantojot mysql klientu, kā parādīts.

# mysql -u database_username -p -h 10.24.96.6

Kļūda norāda, ka resursdatoram 10.24.96.5, no kura datu bāzes lietotājs izveido savienojumu, nav atļauts izveidot savienojumu ar MySQL serveri. Šajā gadījumā mums ir jāveic dažas izmaiņas datu bāzes serverī, lai lietotājs varētu izveidot savienojumu attālināti.

Datu bāzes serverī mums jāpārbauda resursdators, no kura iepriekš lietotājam ir atļauts izveidot savienojumu.

# mysql -u root -p

Izpildiet šādas SQL komandas, lai pārbaudītu lietotāja resursdatoru:

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

No komandas izvades lietotājs drīkst izveidot savienojumu ar datu bāzes serveri tikai no localhost. Tātad mums jāatjaunina lietotāja resursdatori šādi.

Palaidiet šo GRANT komandu, lai iespējotu MySQL piekļuvi attālajam lietotājam no attālā resursdatora. Noteikti aizstājiet “10.24.96.6” ar attālās sistēmas IP adresi un “database_password” uz paroli, kuru vēlaties izmantot “database_username”:

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

Lai piešķirtu lietotājam attālu piekļuvi no visiem tīkla resursdatoriem, izmantojiet zemāk esošo sintaksi:

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

Pēc iepriekš minēto izmaiņu veikšanas mēģiniet vēlreiz attālināti izveidot savienojumu ar MySQL datu bāzes serveri. Savienojumam jābūt veiksmīgam, kā parādīts nākamajā ekrānuzņēmumā.

# mysql -u database_username -p -h 10.24.96.6

Mēs ceram, ka šis risinājums jums palīdzēja atrisināt MySQL attālā savienojuma kļūdu. Ja mums ir kādi jautājumi, izmantojot tālāk sniegto atsauksmju veidlapu.