Komunikat „Error Establishing a Database Connection” oznacza, że WordPress nie może połączyć się z bazą MySQL i pobrać danych potrzebnych do wyświetlenia strony. Najczęściej przyczyną są błędne dane w pliku wp-config.php, ale problem może też leżeć po stronie serwera. Zanim zmienisz jakiekolwiek pliki, wykonaj pełną kopię zapasową witryny i bazy danych.
Co oznacza WordPress database error?
WordPress zapisuje treść, ustawienia, dane użytkowników i informacje o wtyczkach w bazie danych. Plik wp-config.php zawiera parametry, dzięki którym system wie, z jaką bazą ma się połączyć. Gdy dane są nieaktualne, baza nie odpowiada albo serwer odrzuca połączenie, pojawia się błąd „Błąd podczas nawiązywania połączenia z bazą danych”.
Przed rozpoczęciem naprawy przygotuj kopię plików strony oraz eksport bazy danych. Przyda się też dostęp do FTP lub Menedżera plików w panelu hostingu, a także dane MySQL widoczne w panelu usługodawcy.
Nie edytuj pliku wp-config.php bez kopii zapasowej. Jeden znak usunięty lub dopisany w niewłaściwym miejscu może spowodować kolejny błąd.
Jak ustalić przyczynę błędu?
Najpierw sprawdź, kiedy problem się pojawił. Jeśli witryna została niedawno przeniesiona, zmieniono hasło do bazy lub utworzono ją ponownie, podejrzane są dane konfiguracyjne. Jeżeli strona przestała działać bez zmian po Twojej stronie, sprawdź status hostingu i komunikaty w panelu.
| Objaw | Prawdopodobna przyczyna | Pierwszy krok |
|---|---|---|
| Błąd pojawił się po migracji lub zmianie hasła | Nieaktualne DB_NAME, DB_USER, DB_PASSWORD albo DB_HOST | Porównaj dane z panelem hostingu |
| Komunikat „Access denied for user” | Błędny użytkownik, hasło lub brak uprawnień do bazy | Sprawdź dane i uprawnienia użytkownika MySQL |
| Strona i panel administracyjny nie odpowiadają | Niedostępny serwer MySQL, awaria hostingu lub przeciążenie | Sprawdź status serwera i skontaktuj się z hostingiem |
| Błąd pojawił się od razu po instalacji | Niepoprawnie zakończona instalacja albo błędne dane bazy | Zweryfikuj konfigurację lub powtórz instalację |
| Błąd pojawia się okresowo przy dużym ruchu | Limit zasobów bazy, na przykład max_questions | Sprawdź logi i zapytaj hosting o przekroczenia limitów |
Jak sprawdzić plik wp-config.php?
To najczęstsza droga naprawy, szczególnie po zmianie serwera. Na hostingu współdzielonym wartość DB_HOST nie zawsze wynosi localhost. Usługodawca może wymagać konkretnej nazwy hosta lub adresu serwera, dlatego nie zgaduj tego parametru.
- Wykonaj kopię pliku – pobierz aktualny wp-config.php na komputer, zanim go zmienisz.
- Otwórz katalog główny WordPressa – użyj FTP albo Menedżera plików w panelu hostingu. Plik znajduje się zwykle obok katalogów wp-admin, wp-content i wp-includes.
- Znajdź ustawienia MySQL – odszukaj definicje DB_NAME, DB_USER, DB_PASSWORD oraz DB_HOST.
- Porównaj cztery wartości z panelem hostingu – nazwa bazy, nazwa użytkownika i hasło muszą odpowiadać aktywnym danym. Hostem może być localhost, ale nie jest to reguła.
- Sprawdź składnię – każda linia powinna mieć poprawne cudzysłowy, przecinki i średnik, na przykład define( 'DB_NAME’, 'nazwa_bazy’ );.
- Zapisz plik i przetestuj stronę – jeśli błąd nadal występuje, przywróć kopię i przejdź do diagnostyki serwera zamiast wykonywać przypadkowe zmiany.
Jeśli zmieniasz hasło użytkownika MySQL w panelu hostingowym, wpisz je także w wp-config.php. Samo zresetowanie hasła bez aktualizacji pliku nie przywróci połączenia.
Co zrobić, gdy dane są poprawne?
Włącz tryb diagnostyczny WordPressa, aby zobaczyć dokładniejszy komunikat. W kopii pliku wp-config.php odszukaj ustawienie WP_DEBUG i ustaw:
define( 'WP_DEBUG', true );
Odśwież stronę i zapisz wyświetlony komunikat. Po zakończeniu diagnozy wyłącz tryb debugowania, zmieniając wartość z powrotem na false, ponieważ szczegóły błędów nie powinny być publicznie widoczne.
Przy poprawnych danych sprawdź także następujące możliwości:
- Serwer MySQL może być chwilowo niedostępny albo prowadzona jest konserwacja po stronie hostingu.
- Użytkownik bazy może nie mieć uprawnień do wskazanej bazy danych.
- Baza lub jej tabele mogą być uszkodzone, więc potrzebne będzie narzędzie naprawcze dostępne w panelu hostingu albo w WordPressie.
- Limit zapytań, na przykład max_questions, mógł zostać przekroczony na hostingu współdzielonym.
- Witryna może generować zbyt wiele zapytań przez wadliwą wtyczkę lub niewłaściwie działający kod.
Narzędzie naprawy bazy używaj dopiero po wykonaniu kopii. Przy przekroczeniu limitów zapytań sprawdź logi, ogranicz źródło nadmiernego ruchu i skonsultuj sprawę z hostingiem. Samo włączenie cache może pomóc w niektórych przypadkach, ale nie zastąpi znalezienia przyczyny.
Kiedy skontaktować się z hostingiem?
Zgłoś problem dostawcy, gdy serwer MySQL nie odpowiada, awaria występuje na wielu stronach, pojawiają się komunikaty o przekroczeniu zasobów albo nie masz pewności, jaki host i jakie uprawnienia powinien mieć użytkownik bazy. Hosting może sprawdzić status usługi, limity konta, logi oraz konfigurację połączenia.
Jeżeli błąd wystąpił bez zmian w plikach i konfiguracji, nie zakładaj od razu, że uszkodził się WordPress. Najpierw potwierdź dostępność bazy u usługodawcy, a następnie wróć do kopii i porównania danych w wp-config.php.