Giunsa Pag-ayo ang ERROR 1130 (HY000): Dili tugutan ang host nga makonektar niini nga MySQL server


Niining dali nga artikulo, mahibal-an nimo kung giunsa pagsulbad ang \ERROR 1130 (HY000): Ang host x.x.x.x dili gitugotan nga makonekta sa kini nga MySQL server nga sayup sa MySQL/MariaDB database deployment sa usa ka sistema sa Linux. Usa kini sa kasagarang hilit nga database koneksyon sayop nga nasugatan sa mga tiggamit.

  • Application Server IP: 10.24.96.5
  • Database Server IP: 10.24.96.6

Nasugatan namon ang sayup samtang gisulayan ang koneksyon sa database gikan sa usa sa among mga server sa app hangtod sa usa ka server sa database, gamit ang kliyente sa mysql sama sa gipakita.

# mysql -u database_username -p -h 10.24.96.6

Ang sayup nagpakita nga ang host 10.24.96.5 nga gikonektar sa database user dili gitugotan nga makonektar sa MySQL server. Sa kini nga kaso, kinahanglan namon nga maghimo pipila ka mga pagbag-o sa database server aron ang tiggamit makakonekta sa layo.

Sa database server, kinahanglan natong susihon ang host nga gitugutan sa user sa ibabaw nga makakonektar.

# mysql -u root -p

Pagdalagan ang mosunod nga mga SQL command aron masusi ang host sa user:

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

Gikan sa output sa sugo, ang user gitugotan lamang sa pagkonektar sa database server gikan sa localhost. Busa, kinahanglan natong i-update ang mga host sa user sama sa mosunod.

Pagdalagan ang mosunod nga GRANT nga sugo aron makahimo sa MySQL access alang sa hilit nga tiggamit gikan sa usa ka hilit nga host. Siguruha nga ilisan ang \10.24.96.6 sa IP address sa layo nga sistema, ug \database_password sa password nga gusto nimo gamiton sa \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";

Aron mahatagan ang usa ka gumagamit nga layo nga pag-access gikan sa tanan nga host sa usa ka network, gamita ang syntax sa ubos:

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

Human sa paghimo sa mga pagbag-o sa ibabaw, sulayi ang layo nga pagkonektar sa MySQL database server sa makausa pa. Ang koneksyon kinahanglan nga malampuson sama sa gipakita sa mosunod nga screenshot.

# mysql -u database_username -p -h 10.24.96.6

Kami nanghinaut nga kini nga solusyon nakatabang kanimo sa pagsulbad sa imong mysql remote connection error. Kung adunay bisan unsang mga pangutana maabot kanamo pinaagi sa porma sa feedback sa ubos.