„Błąd podczas nawiązywania połączenia z bazą danych” – jak naprawić WordPress

Ilustracja: zerwane połączenie między WordPressem a bazą danych MySQL i dane dostępowe z pliku wp-config.php

Wszystkie treści WordPressa – wpisy, ustawienia, użytkownicy – są w bazie danych. Gdy WordPress nie może się z nią połączyć, nie ma czego wyświetlić, więc pokazuje jedno zdanie: „Błąd podczas nawiązywania połączenia z bazą danych” (ang. Error establishing a database connection). Zwykle nie oznacza to utraty danych.

Najczęstsze przyczyny

  • błędne dane dostępowe w wp-config.php – po przenosinach strony, zmianie hasła bazy lub na skutek włamania,
  • serwer bazy danych jest przeciążony albo nie działa,
  • uszkodzone tabele bazy danych,
  • przekroczony limit połączeń lub zasobów na hostingu współdzielonym.

Krok 1: sprawdź dane w wp-config.php

Otwórz plik wp-config.php w katalogu głównym strony i porównaj cztery wartości z tymi, które widzisz w panelu hostingu (sekcja „Bazy danych” / MySQL):

define( 'DB_NAME', 'nazwa_bazy' );
define( 'DB_USER', 'uzytkownik_bazy' );
define( 'DB_PASSWORD', 'haslo_bazy' );
define( 'DB_HOST', 'localhost' );

Uwaga na DB_HOST – na wielu polskich hostingach to nie jest localhost, tylko osobny adres serwera bazy (np. mysqlXX.nazwahostingu.pl). Najprościej zresetować hasło użytkownika bazy w panelu hostingu i wpisać je ponownie do wp-config.php.

Krok 2: przetestuj połączenie

Aby wykluczyć WordPressa, utwórz w katalogu strony tymczasowy plik test-db.php:

<?php
mysqli_report( MYSQLI_REPORT_OFF );
$db = @mysqli_connect( 'localhost', 'uzytkownik_bazy', 'haslo_bazy', 'nazwa_bazy' );
echo $db ? 'Połączenie OK' : 'Błąd: ' . mysqli_connect_error();

Otwórz go w przeglądarce. „Połączenie OK” oznacza, że dane są dobre, a problem leży gdzie indziej. Komunikat „Access denied” – złe dane logowania. „Connection refused” lub brak odpowiedzi – serwer bazy nie działa. Usuń ten plik zaraz po teście – zawiera hasło do bazy.

Krok 3: serwer bazy danych

Jeśli dane są poprawne, a połączenia nie ma, sprawdź stronę statusu hostingodawcy lub napisz do supportu. Na hostingu współdzielonym przyczyną bywa przekroczenie limitu połączeń – nagły ruch, atak botów albo źle napisana wtyczka. Pomaga cache stron i ograniczenie ruchu botów.

Jeśli dane w wp-config.php zmieniły się „same z siebie”, nie poprawiaj ich i nie zapominaj o sprawie – to jeden z typowych śladów włamania.

Krok 4: napraw uszkodzone tabele

Jeśli strona działa, ale kokpit zgłasza konieczność naprawy bazy, albo błąd pojawia się tylko w niektórych miejscach, użyj wbudowanego narzędzia. Dodaj do wp-config.php:

define( 'WP_ALLOW_REPAIR', true );

Otwórz adres twojadomena.pl/wp-admin/maint/repair.php i wybierz „Napraw bazę danych”. Strona naprawy działa bez logowania, dlatego zaraz po użyciu usuń tę linię z wp-config.php. Alternatywnie tabele naprawisz w phpMyAdmin (zaznacz tabele → „Napraw tabelę”).

Krok 5: adres strony w bazie

Po przenosinach na nową domenę lub serwer sprawdź w phpMyAdmin tabelę wp_options – wiersze siteurl i home muszą zawierać aktualny adres strony. Pamiętaj też, że prefiks tabel ($table_prefix w wp-config.php) musi zgadzać się z nazwami tabel w bazie.

Jak zapobiegać:

  • Trzymaj aktualną kopię bazy danych poza serwerem.
  • Używaj osobnego użytkownika bazy dla każdej strony, z silnym hasłem.
  • Monitoruj dostępność strony – o awarii bazy dowiesz się w minutę, a nie od klienta.

Najczęstsze pytania

Co oznacza „Error establishing a database connection”?

WordPress nie może połączyć się z bazą danych. Najczęstsze przyczyny to błędne dane dostępu w wp-config.php, przeciążona lub wyłączona baza na hostingu albo uszkodzone tabele.

Jak naprawić błąd połączenia z bazą danych?

Sprawdź dane bazy w wp-config.php (nazwa, użytkownik, hasło, host), upewnij się, że serwer bazy działa, i w razie potrzeby napraw tabele. Jeśli bazę przeciąża ruch, czasem pomaga restart lub kontakt z pomocą techniczną hostingu.

Czy stracę dane przy tym błędzie?

Zwykle nie – to problem z połączeniem, a nie z samą zawartością. Dane są w bazie, trzeba tylko przywrócić do niej dostęp. Dlatego regularna kopia bazy danych jest tak ważna.

Potrzebujesz pomocy z tym tematem?

MAQ Enterprise zajmie się tym za Ciebie – od jednorazowego audytu po stałą opiekę nad stroną. Zadzwoń: +48 604 790 398 lub napisz.

Napisz do mnie