Jak naprawić błąd MySQL 2003: Nie można połączyć się z serwerem MySQL na „localhost:3306”

Opublikowany: 2024-03-25

Błąd MySQL 2003 nie może połączyć się z serwerem MySQL na „localhost:3306” (10061) oznacza, że ​​Twoja aplikacja lub narzędzie próbuje, ale bez powodzenia, połączyć się z serwerem bazy danych MySQL na „localhost” przy użyciu domyślnego portu 3306. To jest co mówi również komunikat o błędzie. Przed omówieniem metod naprawienia błędu MySQL 2003 (HY000) ważne jest zrozumienie kilku kluczowych terminów, przyczyn prowadzących do problemu i sposobów uniknięcia ich w przyszłości.

 BŁĄD 2003 (HY000): Nie można połączyć się z serwerem MySQL na „localhost” (10061)

Co oznacza błąd MySQL 2003?

Serwer MySQL jest hostowany na „localhost” – Twoim własnym komputerze – za pośrednictwem portu 3306. Ten komunikat o błędzie wskazuje na przerwę w komunikacji, co oznacza, że ​​próba połączenia z serwerem MySQL nie powiodła się. Komunikat o błędzie zawiera pewne terminy wymagające wyjaśnienia. Oto one:

MySQL Server to oprogramowanie serwera baz danych firmy MySQL, używane do przechowywania, odzyskiwania i zarządzania danymi.

Kod błędu HY000 w MySQL to ogólny znacznik błędu dla nieokreślonych problemów, używany, gdy nie ma zastosowania bardziej szczegółowy kod błędu.

„localhost:3306” (10061) odnosi się do nieudanej próby połączenia się z serwerem MySQL działającym na „localhost” (maszynie, z której wysłano żądanie) przy użyciu portu 3306, z kodem błędu 10061 wskazującym, że serwer nie nasłuchuje aktywnie określonego portu.

Po wyjaśnieniu terminów czas przyjrzeć się przyczynom powodującym ten błąd.

Dlaczego pojawia się błąd MySQL 2003?

Istnieje kilka potencjalnych przyczyn tego problemu. Rozbijmy je trochę.

Serwer MySQL nie działa: W najprostszym przypadku ten błąd może oznaczać, że serwer MySQL, z którym próbujesz się połączyć, nie działa.

Blokowanie zapory sieciowej: Jeśli zapora została skonfigurowana tak, aby blokowała połączenia przychodzące na porcie 3306, próba połączenia zakończy się niepowodzeniem.

Nieprawidłowe ustawienia połączenia: może to wynikać z użycia niewłaściwego portu, nazwy hosta, a nawet adresu IP w ciągu połączenia.

Problemy z siecią: Czasami problem może nie leżeć po Twojej stronie lub w samym MySQL, ale w sieci pomiędzy nimi.Może to obejmować prostą awarię sieci lub bardziej złożone problemy z rozpoznawaniem DNS.

Zrozumienie przyczyn błędu MySQL 2003 jest pierwszym krokiem w kierunku rozwiązania problemu. Bez zobaczenia korzeni trudno będzie naprawić jakikolwiek problem, czy to na żywo, czy w środowisku lokalnym.

Jak wygląda błąd MySQL 2003?

Błąd 2003 w MySQL może objawiać się w różnych postaciach, w zależności od specyfiki Twojej konfiguracji i metody używanej do łączenia się. Mimo że komunikat o błędzie może się różnić, przyczyny i kroki, aby je naprawić, zazwyczaj pozostają takie same.

Oto niektóre typowe sposoby pojawienia się tego błędu:

Błąd 2003: Nie można połączyć się z serwerem MySQL pod adresem „127.0.0.1:3306” : ten komunikat wyraźnie wskazuje na próbę połączenia się z MySQL przy użyciu adresu IP 127.0.0.1, który jest domyślnym adresem IP pętli zwrotnej dla hosta lokalnego port 3306. Sugeruje, że próba połączenia nie powiodła się, prawdopodobnie z powodu niedziałającego serwera lub zapory sieciowej blokującej dostęp.

Błąd MySQL 2003

Nie można połączyć się z lokalnym serwerem MySQL przez gniazdo „/var/lib/mysql/mysql.sock”: Ta odmiana występuje głównie w środowiskach Unix i Linux.Wskazuje, że klient próbuje połączyć się poprzez plik gniazda Unix (w tym przypadku /var/lib/mysql/mysql.sock), ale albo go nie ma, serwer nie działa, albo występują problemy z uprawnieniami uniemożliwiające dostęp.

Kod błędu MySQL Workbench 2003: Podczas korzystania z MySQL Workbench ten błąd pojawia się z tym samym kodem, ale zwykle towarzyszy mu bardziej przyjazne dla użytkownika wyjaśnienie.Nadal oznacza to, że występują problemy z połączeniem się z serwerem MySQL, co może wynikać z którejkolwiek z przyczyn wymienionych powyżej lub konkretnych problemów związanych z konfiguracjami MySQL Workbench.

Każdy komunikat zawiera podpowiedź, z czego wynikał błąd. Zanim wybierzesz sposób naprawienia błędu, możesz uważnie przeczytać wiadomość.

Jak naprawić błąd MySQL 2003?

Naprawianie błędu MySQL 2003 „localhost:3306” obejmuje kilka kroków, które pozwalają upewnić się, że serwer MySQL jest dostępny i odpowiednio skonfigurowany do połączeń. Oto kroki, które możesz wykonać w różnych systemach operacyjnych.

1. Upewnij się, że serwer MySQL jest uruchomiony

Najpierw sprawdź, czy serwer MySQL aktywnie działa na Twoim komputerze. Jeśli serwer nie działa, żadna próba połączenia nie zakończy się sukcesem.

Na Linuksie

  1. Sprawdź status usługi MySQL, uruchamiając w terminalu polecenie ` sudo systemctl status mysql` .
  2. Uruchom usługę za pomocą ` sudo systemctl start mysql`. sudo Linux, magiczne słowo

W systemie Windows

  1. Otwórz aplikację usług (wyszukaj ją w menu Start).
  2. Przewiń w dół, aby znaleźć usługę MySQL i sprawdzić jej status.
  3. Jeśli nie jest uruchomiony, kliknij go prawym przyciskiem myszy i wybierz opcję Start .

2. Sprawdź ustawienia zapory

Jak wspomnieliśmy wcześniej, zapory ogniowe mogą zapobiegać próbom połączenia z MySQL, blokując port 3306, domyślny port używany przez MySQL. Aby sprawdzić, czy błąd pochodzi z zapory sieciowej, wykonaj poniższe czynności.

Na Linuksie

  1. Aby zarządzać ustawieniami zapory sieciowej, użyj ` ufw` ( Nieskomplikowana zapora sieciowa).
  2. Aby zezwolić na ruch MySQL, użyj ` sudo ufw zezwolenie 3306` .

W systemie Windows

  1. Otwórz Zaporę systemu Windows Defender.
  2. Przejdź do Ustawień zaawansowanych .
  3. Sprawdź reguły ruchu przychodzącego pod kątem reguł blokujących port 3306
  4. Dostosuj je odpowiednio.

3. Sprawdź konfigurację serwera MySQL

Plik konfiguracyjny MySQL ( ` my.cnf` w systemie Linux, ` my.ini ` w systemie Windows) zawiera najważniejsze ustawienia połączeń sieciowych. Upewnij się, że plik jest poprawnie skonfigurowany:

-Port powinien być ustawiony na 3306.

-Adres wiązania powinien być albo zakomentowany znakiem `#` na początku linii, albo ustawiony na ` 127.0.0.1 ` , aby akceptować połączenia z hosta lokalnego. Jeśli łączysz się zdalnie, może być ustawiony na ` 0.0.0.0 ` lub konkretny adres IP twojego serwera.

Plik ` my.cnf` znajdziesz zwykle w ` /etc/mysql/ ` w systemie Linux lub ` my.ini ` w katalogu instalacyjnym MySQL w systemie Windows.

4. Sprawdź konfigurację sieci

Upewnij się, że ustawienia sieciowe nie powodują problemów. Sprawdź, czy „localhost” zmienia się na ` 127.0.0.1 ` :

W systemie Linux:

  1. Otwórz terminal → wpisz ping localhost” → naciśnij Enter , aby pingować hosta lokalnego.
  2. Powinieneś zobaczyć odpowiedzi wskazujące adres IP, na który reaguje `localhost`, czyli ` 127.0.0.1 ` .
  3. Jeśli odpowiedź pokazuje `127.0.0.1` , `localhost` jest poprawnie rozpoznawany. Naciśnij Ctrl + C, aby zatrzymać proces pingowania.

W systemie Windows:

  1. Otwórz wiersz poleceń → wpisz ` ping localhost` → naciśnij klawisz Enter , aby pingować hosta lokalnego.
  2. Poszukaj adresu IP w odpowiedziach.
  3. Jeśli wynik zawiera `127.0.0.1` , Twój `localhost` jest poprawnie skonfigurowany.
  4. Zamknij okno, aby wyjść.

Upewnij się, że w pliku hosta nie ma wpisu przekierowującego „ localhost ” na inny adres IP. Plik hosta znajduje się w katalogu ` /etc/hosts ` w systemie Linux i ` C:\Windows\System32\drivers\etc\hosts ` w systemie Windows.

5. Połącz się za pomocą protokołu TCP/IP

Jeśli do łączenia się z bazą danych używasz narzędzi takich jak MySQL Workbench, upewnij się, że metoda połączenia jest ustawiona na TCP/IP .Połączenia TCP/IP są bardziej wszechstronne, zwłaszcza jeśli występują problemy konfiguracyjne z plikami gniazd.

Otwórz MySQL Workbench → Uzyskaj dostęp do ustawień połączenia → Wybierz zakładkę Połączenie → Wybierz z listy metodę połączenia na „Standard (TCP/IP)” → Potwierdź ustawienia

Upewnij się, że inne szczegóły, takie jak nazwa hosta (często localhost), port (domyślnie to 3306), nazwa użytkownika i hasło zostały wprowadzone prawidłowo.

Kliknij przycisk „Testuj połączenie”, aby sprawdzić, czy MySQL Workbench może pomyślnie połączyć się z serwerem MySQL przy użyciu protokołu TCP/IP.

Wniosek

Błąd MySQL 2003 sygnalizuje niemożność połączenia z serwerem MySQL na „localhost:3306”. Jest to powszechne, ale możliwe do rozwiązania wyzwanie zarówno dla administratorów baz danych, jak i programistów. Ten błąd, czyli zasadniczo przerwa w komunikacji między aplikacją a serwerem MySQL, może mieć różne przyczyny, w tym awarię serwera MySQL, ograniczenia zapory sieciowej, nieprawidłowe ustawienia połączenia lub problemy z siecią.

Zrozumienie zawiłości MySQL Error 2003 ma kluczowe znaczenie dla skutecznego rozwiązywania problemów. Od szczegółów kodu błędu (HY000) po konsekwencje próby połączenia się z „localhost” na porcie 3306 – każdy szczegół pozwala zrozumieć naturę problemu.

Po przeczytaniu tego przewodnika powinieneś już rozwiązać błąd MySQL 2003, więc gratulacje!