Lagfæring: VILLA 2003 (HY000): Get ekki tengst MySQL miðlara á 127.0.0.1 (111)


Þessari kennslu er ætlað að útskýra nauðsynleg skref til að leysa \VILLA 2003 (HY000): Get ekki tengst MySQL þjóninum á ‘127.0.0.1’ (111)“ sem gæti átt sér stað þegar þú reynir að fá aðgang að MySQL gagnagrunnsþjóninum.

Áður en þú ferð lengra, ef þú ert Linux notandi sem er nýr í MySQL/MariaDB, þá gætirðu íhugað að læra 20 MySQL (Mysqladmin) skipanir fyrir gagnagrunnsstjórnun í Linux líka.

Aftur á móti, ef þú ert nú þegar miðlungs/reyndur MySQL notandi, geturðu náð góðum tökum á þessum 15 gagnlegu MySQL/MariaDB árangursstillingum og hagræðingarráðum.

Athugið: Fyrir þessa kennslu er gert ráð fyrir að þú hafir þegar sett upp mysql gagnagrunnsþjón.

Komum aftur að áherslupunktinum, hverjar eru nokkrar mögulegar orsakir þessarar villu?

  1. Netkerfisbilun, sérstaklega ef mysql gagnagrunnsþjónn er í gangi á ytri hýsil.
  2. Enginn mysql þjónn er í gangi á nefndum hýsil.
  3. Eldveggur sem hindrar TCP-IP tengingu eða aðrar skyldar ástæður.

Hér að neðan eru nauðsynleg skref til að takast á við það.

1. Ef gagnagrunnsþjónn er á ytri vél, reyndu þá að prófa tenginguna biðlara og miðlara með ping skipun, til dæmis:

$ ping server_ip_address

Þegar tenging er komin, notaðu ps skipunina hér að neðan sem sýnir upplýsingar um úrval af virku ferlunum ásamt pipe og grep skipun, til að athuga hvort mysql púkinn sé keyra á kerfinu þínu.

$ ps -Af | grep mysqld

þar sem valmöguleikinn:

  1. -A – virkjar val á öllum ferlum
  2. -f – gerir skráningu á fullu sniði kleift

Ef það er engin framleiðsla frá fyrri skipuninni skaltu hefja mysql þjónustuna sem hér segir:

$ sudo systemctl start mysql.service
$ sudo systemctl start mariadb.service
OR
# sudo /etc/init.d/mysqld start

Eftir að hafa hafið mysql þjónustu skaltu reyna að fá aðgang að gagnagrunnsþjóninum:

$ mysql -u username -p -h host_address  

2. Ef þú færð enn sömu villuna skaltu ákvarða portið (sjálfgefið er 3306) sem mysql púkinn er að hlusta á með því að keyra netstat skipunina.

$ netstat -lnp | grep mysql

þar sem valkostir:

  1. -l – sýnir hlustunargáttir
  2. -n – gerir kleift að birta töluleg heimilisföng
  3. -p – sýnir PID og nafn forritsins sem á falsið

Notaðu því -P valmöguleikann til að tilgreina gáttina sem þú sérð úr úttakinu hér að ofan á meðan þú opnar gagnagrunnsþjóninn:

$ mysql -u username -p -h host_address -P port

3. Ef allar ofangreindar skipanir keyra með góðum árangri, en þú sérð samt villuna, opnaðu mysql stillingarskrána.

$ vi /etc/mysql/my.cnf
OR
$ vi /etc/mysql/mysql.conf.d/mysqld.cnf 

Leitaðu að línunni hér að neðan og skrifaðu athugasemdir með # stafnum:

bind-address = 127.0.0.1 

Vistaðu skrána og farðu úr, endurræstu síðan mysql þjónustuna þannig:

$ sudo systemctl start mysql.service
$ sudo systemctl start mariadb.service
OR
# sudo /etc/init.d/mysqld start

Hins vegar, ef þú ert með Iptables í gangi, reyndu að endurskoða eldveggsþjónustuna og opna mysql tengið, að því gefnu að það sé eldveggur sem hindrar TCP-IP tengingar við mysql netþjóninn þinn.

Það er allt og sumt! Kanntu aðrar aðferðir eða hefurðu tillögur til að leysa MySQL tengivilluna hér að ofan? Láttu okkur vita með því að senda athugasemd í gegnum athugasemdaformið hér að neðan.