blad polaczenia z baza danych wordpress

Jak naprawić błąd Error Establishing a Database Connection w WordPress?

Jeśli zobaczyłeś ten komunikat, próbując wejść na swoją stronę – nie wpadaj w panikę!
Faktycznie obrazek widoczny powyżej wygląda dość dramatycznie, ale spokojnie, damy radę wszystko naprawić.


Tak naprawdę to dość częsty błąd a zaradzenie jemu wcale nie jest takie trudne.
Ten błąd to nic innego jak brak połączenia z bazą danych. Znaczy to mniej więcej tyle, że Twój WordPress wykorzystując komendy PHP, nie może połączyć się z bazą danych MySQL, w której przechowywane są wszystkie dane strony www.


Jest kilka, może kilkanaście powodów, z których ten błąd może wynikać.


Oto najpopularniejsze z nich:

  • niedziałający serwer – bardzo często jest tak, że serwer na którym działa baza danych to nie ten sam serwer, na którym trzymasz pliki swojego WordPressa, jeśli usługodawca, z jakiegoś powodu (np. ataku hakerskiego) wyłączy serwer na którym jest baza danych, to WordPress automatycznie przestanie działać;
  • błędne dane logowania – żeby WordPress mógł połączyć się z bazą danych, potrzebuje loginu i hasła, może zdarzyć się tak, że w jakiś sposób login lub hasło uległo zmianie, połączenie nie będzie możliwe;
  • uszkodzone pliki WordPressa – zdaża się tak, że coś pójdzie nie tak jak powinno przy aktualizacji czy to samego rdzenia WordPressa, czy też motywu lub wtyczki, jeśli w trakcie tej czynności uszkodzone zostaną główne pliki naszego CMSa to nici z połączenia z bazą danych;
  • uszkodzona baza danych – uszkodzenia te najczęściej są spowodowane przez ataki hakerskie przeprowadzane za pomocą złośliwych kodów wstrzykiwanych w kod wtyczki czy motywu. Dlatego tak ważne jest, aby zawsze pobierać dodatki tylko z zaufanych źródeł.
  • Zbyt duży ruch na stronie – teoretycznie jest to “dobry” problem, ale nie zawsze. Czasem jest, tak że ten duży ruch spowodowany jest przez roboty, które otwierają Twoją stronę nawet kilkaset razy na sekundę i niestety serwer nie wytrzymuje takiego natężenia.

    Postaram się wyjaśnić jak w kilku krokach naprawić ten błąd:

Rozwiązanie 1:

Skontaktuj się ze swoim dostawcą hostingu. Zdecydowana większość dostawców oferuje wsparcie on-line całodobowo. No i w 90% przypadków zgłoszenie takiej awarii do helpdesku spowoduje, że rozwiążą ten problem za Was. Dowiesz się też, jaka była przyczyna tej awarii.

Jeśli z jakiegoś powodu Twój dostawca nie chce Ci pomóc albo nie chcesz do niego pisać, przejdź do rozwiązania nr 2.

Rozwiązanie nr 2:

Sprawdź, czy wszystkie pliki motywów i wtyczek są w porządku. Mogło się tak zdarzyć, że pliki zostały uszkodzone w trakcie aktualizacji.

Jeśli zmieniałeś zawartość jakiegoś pliku w edytorze WordPressa to właśnie znalazłeś winowajcę. I co teraz? Już tłumaczę:

Po pierwsze połącz się ze swoim hostingiem przez protokół FTP. Ja używam do tego programu FileZilla. Potrzebne Ci będą: adres serwera FTP, login i hasło. Wszystkie potrzebne dane znajdziesz w panelu zarządzania swoim hostem.

Jak już się połączysz, musisz odnaleźć katalog główny WordPressa. Najczęściej jest on w katalogu Public, htdocs lub po prostu WWW. Katalog główny rozpoznasz po tym, że znajdziesz w nim takie katalogi jak wp-content czy wp-includes.

Po odnalezieniu katalogu przejdź do katalogu wp-content i zmień nazwę katalogu plugins na plugins_old lub dowolną inną. Teraz przeładuj stronę i zobacz czy błąd ustąpił. Jeśli tak to już wiesz gdzie szukać winowajcy.

Zmień z powrotem nazwę katalogu na plugins, wejdź do niego i po kolei zmieniaj nazwy folderów kolejnych wtyczek. Po każdej zmianie odświeżaj stronę i sprawdzaj, czy błąd zniknął. Jeśli przy którejś wtyczce zniknie, wiesz już, która z nich odpowiadała za błąd.

Jeśli okaże się, że zmiana nazwy folderu “plugin” na inną nie pomogła zrób dokładnie to samo z folderem themes. Jeśli to również nie pomogło, przejdź do następnego kroku.

Rozwiązanie nr 3:

Sprawdź, czy baza danych nie jest uszkodzona. Baza danych to nic innego jak zbiór tabel (dość skomplikowanych) bywa tak, że któraś tabela zmieni swoje miejsce i wtedy pojawia się ten problem.

Przejdź do panelu administracyjnego WP.
twojadomena.pl/wp-admin
Jeśli widzisz ten sam błąd, pomiń ten krok.

Jeśli widzisz komunikat “Jedna lub więcej tabel bazy danych jest niedostępna […]” znaczy, że musisz naprawić bazę danych. Spokojnie! To nic trudnego.
Połącz się ponownie przez FTP znajdź plik wp-config i zapisz go na pulpicie.
Otwórz plik w notatniku i na samym końcu dodaj do niego poniższą linijkę:
define (‚WP_ALLOW_REPAIR’, true);
Prześlij plik ponownie na serwer i zastąp starą wersję.
Wpisz w przeglądarce adres:
twojadomena.pl/wp-admin/maint/repair.php

Twoim oczom powinien ukazać się taki obrazek:

Kliknij jeden z przycisków. Po zakończonej naprawie wróć do swojej strony i zobacz czy problem zniknął.
Jeśli tak to super, ale to nie koniec pracy.
Musisz jeszcze przywrócić poprzednią wersję pliku wp-config.php
Usuń linię, którą przed chwilą dodałeś i prześlij plik na serwer przez FTP.

Rozwiązanie nr 4:

Sprawdź, czy w pliku wp-config zapisane są poprawne dane logowania do bazy danych. Do sprawdzenia mamy 4 linie zawarte w wyżej wymienionym pliku. Konkretnie są to te linie:
define („DB_NAME”, „some_db”);
define (‚DB_USER’, ‚some_username’);
define (‚DB_PASSWORD’, „some_pass”);
define (‚DB_HOST’, ‚localhost’);
Sprawdź, czy dane zawarte w tych liniach pokrywają się z danymi dostępu do bazy danych w panelu zarządzania w hostingu.
Nie będę tego szczegółowo omawiał, ponieważ dane dostępu mogą być umieszczone w różnych miejscach w zależności od dostawcy usług.

Jeśli to rozwiązanie również nie skutkuje nie pozostaje Ci nic innego jak tylko przywrócić źródłowe pliki WordPressa. Jest to wyjście ostateczne i może wiązać się z utratą wszystkich treści strony. Pamiętaj, żeby WordPressa pobierać tylko z repozytorium, które znajdziesz tutaj.

Po pobraniu rozpakuj je i przez FTP prześlij na serwer katalog wp-content.
To powinno rozwiązać Twój problem. Jeśli nie pomogło, to nie możesz zrobić już nic innego jak skontaktować się z dostawcą usługi i wymusić na nim działanie.

Czy da się uniknąć tego błędu?


Cóż, nie ma sposobu, który zabezpieczy Cię przed nim w 100%.
Największy wpływ na uniknięcie tego błędu to ma wybór hostingu. Dlatego zalecamy naszym klientom wybór dobrych, sprawdzonych dostawców.
Drugą rzeczą, która uchroni Cię przed utratą wszystkich treści, jest regularne wykonywanie kopii zapasowych strony.
Możesz je zrobić za pomocą wtyczki np. Updraft plus. Mając zawsze aktualną kopię, przywrócisz stronę bez problemu. Jak to zrobić opiszę w następnym tekście.

Jeśli macie jakieś problemy ze stroną odezwijcie się w komentarzu. Spróbuję Wam pomóc.