Poprawka błędu 2003 (HY000) nie może połączyć się z MySQL Server na '127.0.0.1 '(111)

Poprawka błędu 2003 (HY000) nie może połączyć się z MySQL Server na '127.0.0.1 '(111)

Ten samouczek ma na celu wyjaśnienie niezbędnych kroków do rozwiązania „Błąd 2003 (HY000): Nie można połączyć się z MySQL Server na '127.0.0.1 '(111)„Co może wystąpić, gdy próbujesz uzyskać dostęp do serwera bazy danych MySQL.

Przed kontynuowaniem, jeśli jesteś użytkownikiem Linux, który jest nowy Mysql/Mariadb, Następnie możesz rozważyć naukę MySQL / MariaDB dla początkujących - Część 1 i 20 MySQL (MySQLadmin) Dowództwo do podawania bazy danych w Linux.

Z drugiej strony, jeśli jesteś już pośrednim/doświadczonym użytkownikiem MySQL, możesz opanować te 15 przydatnych wskazówek dotyczących wydajności i optymalizacji MySQL/.

Notatka: W tym samouczku zakłada się, że zainstalowałeś już serwer bazy danych mysql.

Wracając do punktu skupienia, jakie są niektóre z możliwych przyczyn tego błędu?

  1. Niepowodzenie sieci, zwłaszcza jeśli serwer bazy danych MySQL działa na zdalnym hoście.
  2. Nie ma serwera MySQL na wspomnianym hoście.
  3. Zapora blokująca połączenie TCP-IP lub inne powiązane powody.

Poniżej znajdują się niezbędne kroki, aby sobie z tym poradzić.

1. Jeśli serwer bazy danych znajduje się na zdalnym komputerze, spróbuj przetestować łączność klient-serwer za pomocą świst na przykład polecenie:

$ ping server_ip_address 
Maszyna hosta ping

Gdy pojawi się łączność, użyj Ps Poniższe polecenie, które pokazuje informacje o wyborze aktywnych procesów wraz z rura i polecenie GREP, aby sprawdzić, czy demon MySQL działa w twoim systemie.

$ ps -af | Grep Mysqld 

gdzie opcja:

  1. -A - aktywuje wybór wszystkich procesów
  2. -F - Włącza pełną listę formatu
Sprawdź proces MySQL

Jeśli nie ma wyjścia z poprzedniego polecenia, uruchom usługę MySQL w następujący sposób:

$ sudo systemctl start mysql.serwis $ sudo systemctl start mariadb.serwis lub # sudo /itp. /init.d/mysqld start 

Po rozpoczęciu usługi MySQL spróbuj uzyskać dostęp do serwera bazy danych:

$ mysql -u nazwa użytkownika -p -h host_address 

2. Jeśli nadal otrzymujesz ten sam błąd, określ port (domyślnie jest 3306), na którym słucha demon MySQL, uruchamiając polecenie NetStat.

$ netstat -lnp | Grep Mysql 

gdzie opcje:

  1. -L - Wyświetla porty słuchowe
  2. -N - umożliwia wyświetlanie adresów numerycznych
  3. -P - pokazuje PID i nazwę programu posiadającego gniazdo
Znajdź numer portu MySQL

Dlatego użyj -P Opcja określającego port, który widać z powyższego wyjścia, jednocześnie uzyskując dostęp do serwera bazy danych:

$ mysql -u nazwa użytkownika -p -h host_address -p port 

3. Jeśli wszystkie powyższe polecenia działają pomyślnie, ale nadal widzisz błąd, otwórz plik konfiguracyjny MySQL.

$ vi/etc/mysql/my.cnf lub $ vi/etc/mysql/mysql.conf.D/Mysqld.CNF 

Poszukaj poniższego wiersza i skomentuj ją za pomocą # postać:

Address z wiązaniem = 127.0.0.1 

Zapisz plik i wyjdź, a następnie uruchom ponownie usługę MySQL, tak:

$ sudo systemctl start mysql.serwis $ sudo systemctl start mariadb.serwis lub # sudo /itp. /init.d/mysqld start 

Jeśli jednak masz uruchomienie Firewalld lub IPTables, spróbuj przeglądać usługi zapory i otworzyć port MySQL, zakładając, że jest to zapory blokujące połączenia TCP-IP z serwerem MySQL.

To wszystko! Czy znasz inne metody lub masz sugestie dotyczące rozwiązania powyższego błędu połączenia MySQL? Daj nam znać, upuszczając komentarz za pośrednictwem poniższego formularza opinii.