Remediere: EROARE 2003 (HY000): Nu se poate conecta la serverul MySQL pe „127.0.0.1” (111)
Acest tutorial are scopul de a explica pașii necesari pentru rezolvarea „EROAREA 2003 (HY000): Nu se poate conecta la serverul MySQL pe „127.0.0.1” (111)” care ar putea apărea atunci când încercați să accesați serverul de baze de date MySQL.
Înainte de a trece mai departe, dacă sunteți un utilizator Linux care este nou la MySQL/MariaDB, atunci vă puteți gândi să învățați MySQL/MariaDB pentru începători – Partea 1 și 20 Comenzi MySQL (Mysqladmin) pentru administrarea bazelor de date în Linux de asemenea.
Pe de altă parte, dacă sunteți deja un utilizator MySQL intermediar/experimentat, puteți stăpâni aceste 15 Sfaturi utile de optimizare și optimizare a performanței MySQL/MariaDB.
Notă: pentru acest tutorial, se presupune că ați instalat deja serverul de baze de date mysql.
Revenind la punctul focal, care sunt unele dintre posibilele cauze ale acestei erori?
- Eșec de rețea, mai ales dacă serverul de baze de date mysql rulează pe o gazdă la distanță.
- Niciun server mysql nu rulează pe gazda menționată.
- Firewall blochează conexiunea TCP-IP sau alte motive conexe.
Mai jos sunt pașii esențiali pentru a face față.
1. Dacă serverul de baze de date se află pe o mașină la distanță, atunci încercați să testați conectivitatea client-server utilizând comanda ping
, de exemplu:
ping server_ip_address
Odată ce există conectivitate, utilizați comanda ps
de mai jos, care arată informații despre o selecție a proceselor active, împreună cu o comandă pipe
și grep, pentru a verifica dacă demonul mysql este rulează pe sistemul dvs.
ps -Af | grep mysqld
unde optiunea:
-A
– activează selecția tuturor proceselor-f
– activează listarea în format complet
Dacă nu există nicio ieșire de la comanda anterioară, porniți serviciul mysql după cum urmează:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
După pornirea serviciului mysql, încercați să accesați serverul bazei de date:
mysql -u username -p -h host_address
2. Dacă încă primiți aceeași eroare, atunci determinați portul (implicit este 3306) pe care ascultă demonul mysql, rulând comanda netstat.
netstat -lnp | grep mysql
unde sunt optiunile:
-l
– afișează porturile de ascultare-n
– permite afișarea adreselor numerice-p
– arată PID-ul și numele programului care deține socket-ul
Prin urmare, utilizați opțiunea -P
pentru a specifica portul pe care îl vedeți din rezultatul de mai sus în timp ce accesați serverul bazei de date:
mysql -u username -p -h host_address -P port
3. Dacă toate comenzile de mai sus rulează cu succes, dar încă vedeți eroarea, deschideți fișierul de configurare mysql.
vi /etc/mysql/my.cnf
OR
vi /etc/mysql/mysql.conf.d/mysqld.cnf
Căutați rândul de mai jos și comentați-l folosind caracterul #
:
bind-address = 127.0.0.1
Salvați fișierul și ieșiți, apoi reporniți serviciul mysql astfel:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
Cu toate acestea, dacă aveți firewallD sau Iptables care rulează, încercați să revizuiți serviciile firewall și să deschideți portul mysql, presupunând că firewall-ul blochează conexiunile TCP-IP la serverul dvs. mysql.
Asta e tot! Cunoașteți alte metode sau aveți sugestii pentru a rezolva eroarea de conexiune MySQL de mai sus? Anunțați-ne lăsând un comentariu prin formularul de feedback de mai jos.