Uwaga: Poniższy artykuł pomoże Ci w: Jak naprawić „Błąd podczas nawiązywania połączenia z bazą danych” w WordPress
Nic tak nie wprawia w osłupienie jak powitanie ekranem błędu i komunikatem „Błąd nawiązywania połączenia z bazą danych”, w końcu niedziałająca strona internetowa to ruch, który może już nigdy nie wrócić – utraconi subskrybenci, utraconi klienci, utracona szansa – i utracone przychody .
WordPress to darmowa i niezwykle popularna platforma do zarządzania witryną, ale jest to dość dobrze znany problem WordPress.
Co powoduje ten błąd i co on oznacza? Mówiąc bardziej konkretnie, w jaki sposób możesz po prostu rozwiązać problem i przywrócić działanie witryny?
Przyjrzyjmy się problemowi i jego przyczynom, a następnie omówimy kroki rozwiązywania problemów i naprawy błędu.
Jaki jest problem z moją bazą danych?
Jeśli zrozumiesz, jak działa WordPress, aby wyświetlać twoje strony internetowe, będziesz miał lepszy pomysł, skąd pochodzi problem i dlaczego może być tak paraliżujący.
WordPress jest zbudowany przy użyciu PHP i MySQL. Informacje, z których składa się Twoja witryna, są przechowywane w bazie danych MySQL, a skrypty PHP informują WordPress, jak przechowywać i pobierać te informacje, aby tworzyć i aktualizować strony.
Za każdym razem, gdy dodawana jest strona lub post, informacja o niej jest zapisywana w Twojej bazie danych MySQL. Każde ustawienie widżetu i aktywna wtyczka są odnotowywane w MySQL. Gdy strona jest ładowana, jest budowana w locie. Istnieje oddzielna instrukcja PHP do pobierania każdego elementu, od ramek, kolorów i tytułów po daty i czcionki.
Gdy pojawi się komunikat „Błąd podczas nawiązywania połączenia z bazą danych”, WordPress informuje, że kod PHP nie może połączyć się z bazą danych MySQL Twojej witryny w celu pobrania informacji potrzebnych do złożenia strony.
Dlatego błąd jest wszystkim, co otrzymujesz, a nie nieprawidłowo wyświetloną stroną. Bez bazy danych nie ma żadnych dostępnych informacji potrzebnych do zbudowania strony. W przypadku niektórych potrzeb można polegać na stronach HTML, ale to nadal pozostawia problem i przeczy całemu celowi posiadania WordPressa i zaletom PHP.
Co powoduje błąd połączenia z bazą danych?
Chociaż błąd jest dość prosty, strona błędu niestety nie mówi nic o problemach, które go powodują – mam nadzieję, że jakiś guru WordPress zajmie się tym w przyszłości. Faktem jest, że może istnieć wiele powodów, dla których Twoja baza danych jest niedostępna. O ile naprawdę nie majstrowałeś przy ustawieniach PHP i witryny, najczęstsze przyczyny należą do jednej lub więcej z tych trzech podstawowych kategorii:
1. Uwierzytelnienie loginu
Twoja baza danych wymaga dwóch oddzielnych elementów uwierzytelniających dowolnego użytkownika, WordPress lub w inny sposób. To jest twój login i hasło. Jeśli te poświadczenia zostały zmienione, nie można uzyskać dostępu do bazy danych, a brak informacji oznacza brak strony.
2. Uszkodzona baza danych
Zdarza się to z kilku różnych powodów, od złośliwego oprogramowania lub złych wtyczek, po problemy z serwerem hosta (miejmy nadzieję, że renomowana firma hostingowa uruchomi wszystko tak szybko, jak to możliwe).
3. Uszkodzone pliki
Czasami pojedynczy plik php może zawierać wewnętrzne błędy, jeśli na przykład masz jakieś złośliwe oprogramowanie lub złą wtyczkę, która nie działa tak, jak powinna. Czasami nie jest to php, ale inny plik, który php ma otworzyć jako część twojej strony.
4. Serwer niedostępny
Czasami serwer jest po prostu nieosiągalny. Może być wyłączony z powodu prac konserwacyjnych, przeciążony ruchem i niezdolny do obsługi nowych połączeń. Być może wystąpił problem z usługodawcą internetowym i połączeniem internetowym lub przeglądarką.
Niektóre z tych rzeczy mogą być poza twoją kontrolą, więc jak możesz zidentyfikować problem i go naprawić?
Rozwiązywanie problemów z połączeniem z bazą danych
1. Uwierzytelnienie loginu
Jeśli nadal masz problemy, może to być problem z poświadczeniami MySQL. Jak to się mogło stać? Rzeczy takie jak zmiana firmy hostingowej, resetowanie haseł, zmiana nazw baz danych lub uruchamianie niewłaściwych zapytań MySQL mogą powodować takie problemy, jeśli plik wp-config nie został zaktualizowany w celu odzwierciedlenia nowych informacji.
Wróć do pliku wp-config, jeśli go nie otworzyłeś, i poszukaj sekcji gdzieś w pobliżu początku pliku, która wygląda tak:
define(‘NAZWA_DB’, ‘nazwa-bazy-danych’); define(‘DB_USER’, ‘nazwa użytkownika bazy danych’); define(‘DB_PASSWORD’, ‘hasło-bazy danych’); zdefiniuj(‘DB_HOST’, ‘localhost’);
Możesz zobaczyć informacje, których WordPress potrzebuje, aby połączyć się z twoją bazą danych: nazwa bazy danych, nazwa użytkownika, hasło i komputer hosta. Jeśli którykolwiek z nich jest nieprawidłowy, WordPress nie może połączyć się z potrzebnymi danymi. W razie wątpliwości możesz sprawdzić swoją bazę danych z pulpitu nawigacyjnego cPanel, który zwykle ma funkcję o nazwie PHPMyAdmin do korzystania z baz danych poza WordPress. Możesz najpierw wykonać kopię zapasową bazy danych. Ponieważ będziesz bezpośrednio zmieniać dane swojej witryny z PHPMyAdmin, błąd w tym momencie może spowodować jeszcze większe szkody.
Zaloguj się do PHPMyAdmin, a po lewej stronie zobaczysz listę baz danych. Kliknij tę, która pasuje do nazwy bazy danych, którą masz w pliku wp-config.php (wartość tekstowa po prawej stronie DB_NAME). Jeśli nie widzisz żadnej bazy danych na liście, problem może dotyczyć serwera hosta, a nie bazy danych, ponieważ absolutnie powinna istnieć baza danych MySQL.
Po kliknięciu nazwy bazy danych pojawi się ekran z listą nazw tabel w bazie danych. W razie wątpliwości kliknij „Przeglądaj” obok tabeli o nazwie wp-options, a powinieneś znaleźć nazwę swojej witryny i adres URL wraz z innymi ustawieniami. Jeśli tam jest, a nazwa pasuje do wpisu wp-config.php, masz odpowiednią bazę danych.
Jeśli adres URL jest prawidłowy, ale plik wp-config jest nieprawidłowy, zmień tam nazwę, aby pasowała do właściwej bazy danych.
Następnie sprawdź nazwę użytkownika i hasło. Można to zrobić na dwa sposoby, ale drugi jest znacznie prostszy.
1. Utwórz krótki plik .php, aby sprawdzić, czy możesz połączyć się z bazą danych za pomocą poświadczeń z wp-config. Do nowego typu pliku tekstowego:
Zapisz plik w katalogu WordPress jako „connectiontest.php” lub cokolwiek chcesz (o ile masz przyrostek „.php”). Wpisz adres URL pliku w przeglądarce i wypróbuj; zobaczysz komunikat „Połączono pomyślnie” lub „Nie można nawiązać połączenia”.
Jeśli nazwa użytkownika i hasło nie działają, przejdź do kroku 2.
2. Jeśli nie możesz znaleźć podanej nazwy użytkownika i hasła w tabeli, śmiało utwórz nową nazwę użytkownika i hasło w tabeli wp-options – pamiętaj tylko, aby wprowadzić zmiany w pliku wp-config.
Najlepszym sposobem na to jest użycie innego narzędzia cPanel o nazwie „Bazy danych MySQL”. Kliknij to i przewiń do „Użytkownicy MySQL: Dodaj nowego użytkownika”. Utwórz nową nazwę użytkownika i hasło i upewnij się, że zmiany zostały zaktualizowane w wp-config. Kliknij „Utwórz użytkownika”, a następnie znajdź „Dodaj użytkownika do bazy danych”. Wybierz nazwę użytkownika i hasło, które właśnie utworzyłeś, i kliknij „Dodaj”. Jeśli dokonałeś dokładnie tych samych wpisów w swoim wp-config, twoje poświadczenia MySQL są teraz poprawne.
Jeśli błąd połączenia z bazą danych będzie się powtarzał, problemem może być wpis DB_HOST w pliku wp-config. W większości przypadków będzie to zwykły „localhost”, ale Twoja firma hostingowa może używać innych ustawień. Zapoznaj się z samouczkami oferowanymi przez firmę hostingową lub skontaktuj się z nią i zapytaj. Jeśli nadal masz wątpliwości lub niecierpliwisz się, możesz odwiedzić Kodeks WordPress, aby zobaczyć kilka typowych opcji, które możesz wypróbować.
Innym możliwym problemem w tabeli wp-options może być sposób wyświetlania adresu URL. Jeśli wpis został w jakiś sposób zmieniony, możesz to poprawić za pomocą prostej instrukcji MySQL z PHPMyAdmin:
AKTUALIZACJA wp_options SET option_value=”YOUR_SITE_URL” GDZIE option_name=”siteurl”
2. Uszkodzona baza danych
Może występować problem z bazą danych, jeśli wp-admin działa dobrze, ale strona publiczna nie ładuje się. Możesz również patrzeć na uszkodzenie bazy danych, jeśli pojawia się błąd tylko podczas próby uzyskania dostępu do wp-admin lub jeśli otrzymujesz inne błędy podczas logowania, takie jak: „Co najmniej jedna tabela bazy danych jest niedostępna. Baza danych może wymagać naprawy”.
Nie jest to coś, o czym byś wiedział, chyba że przeczytałeś samouczki WordPress lub spędziłeś czas na forach, ale WordPress zapewnia łatwy sposób na odzyskanie bazy danych. Zanim będzie można go wypróbować, funkcja musi być włączona w pliku wp-config.php, w którym znajdują się ustawienia instalacji. Przejdź do cPanel konta hosta, Menedżera plików i otwórz plik katalogu głównego WordPress.
Otwórz plik wp-config do edycji i dodaj ten wiersz kodu:
zdefiniuj („WP_ALLOW_REPAIR”, prawda);
Teraz możesz zoptymalizować i naprawić bazę danych MySQL. Nawigować do:
www.yourwebsite.com/wp-admin/maint/repair.php, gdzie „twojastrona.com” to oczywiście Twój rzeczywisty adres URL.
Na tej nowej stronie zobaczysz dwa przyciski oznaczone: „Napraw bazę danych” i „Napraw i zoptymalizuj bazę danych”. Wybierz, aby wykonać zadanie; ale jeśli wybierzesz przycisk „optymalizuj”, zajmie to więcej czasu, a uruchomienie witryny jest najważniejsze.
Optymalizacja bazy danych w tym momencie prawdopodobnie i tak nie stanowi problemu. Chociaż optymalizacja zwykle nie zaszkodzi, zawsze istnieje ryzyko, że może ona doprowadzić do innych problemów, których nie chcesz teraz rozwiązywać. Istnieją inne sposoby optymalizacji i czyszczenia bazy danych. Udostępniono kilka wtyczek WordPress, a także za pośrednictwem PHPMyAdmin.
(Note: ta strona naprawy nie jest domyślnie włączona, ponieważ jest niezabezpieczona (w przeciwnym razie nie byłbyś w stanie do niej dotrzeć). Każdy, kto zna WordPress, może uzyskać dostęp do Twojej witryny i potencjalnie zepsuć Twój MySQL, więc pamiętaj, aby usunąć ten wiersz kodu z pliku wp-config, gdy skończysz.)
W międzyczasie możesz pozostawić wp-config otwarte, dopóki błąd nie zostanie rozwiązany, a Twoja witryna będzie działać. Jeśli nadal masz problemy, ponownie będziesz potrzebować wp-config.
3. Uszkodzone pliki
Jeśli stwierdzisz, że Twoja baza danych jest w porządku i została zsynchronizowana z Twoimi poświadczeniami, przyczyną może być zły plik. Użytkownicy zgłaszają, że czasami ponowne przesłanie podstawowych plików WordPress rozwiązuje problemy z połączeniem. Dokładnie, dlaczego trudno byłoby ustalić bez przeglądania wszystkich tych plików, trudne zadanie dla każdego, nawet kogoś biegłego w php. Czasami ma to związek z uprawnieniami do plików, ustawieniami lub zmiennymi w kluczowych plikach, takich jak wp-content, który zawiera ustawienia ważnych funkcji strony, takich jak motywy, multimedia i wtyczki.
Aby zresetować pliki WordPress w jednym kroku, musisz pobrać najnowszą wersję z WordPress.org. Rozpakuj pliki na swoim komputerze i usuń wp-config.php i wp-content.php. Będą one odzwierciedlać wszystkie zmiany wprowadzone w Twojej witrynie, a nadpisanie istniejących plików może je cofnąć. Po ich usunięciu przejdź do cPanelu hosta i prześlij pozostałe pliki do folderu głównego WordPress.
Możesz chcieć użyć narzędzia FTP, ponieważ ręczne wykonywanie ich jest podatne na błędy i może zająć sporo czasu.
Jeśli nikt nie dokonał szkodliwych zmian w wp-config lub wp-content, powinieneś być w stanie bezpiecznie nadpisać i zastąpić istniejące pliki WordPress w swojej witrynie nieskazitelnymi wersjami. Mamy nadzieję, że to rozwiąże wszelkie problemy z plikami. Przynajmniej z punktu widzenia WordPressa. Jeśli przesłałeś coś tuż przed błędami połączenia, zwłaszcza skrypt innej firmy dla swoich widżetów, usuń to i spróbuj ponownie.
Inni zgłaszali bardziej nieuchwytne problemy, których nie rozwiązało żadne z powyższych. Możesz mieć złą wtyczkę; aby to sprawdzić, możesz wejść i wyłączyć je wszystkie, a następnie ponownie aktywować jeden po drugim i sprawdzić, czy łączność została przywrócona.
Najprostszym sposobem na to jest pulpit nawigacyjny wp-admin, ale jeśli nie możesz do niego dotrzeć, przejdź do PHPMyAdmin w swoim hoście cPanel.
Otwórz swoją bazę danych i na zakładce SQL wpisz:
WYBIERZ *FROM wp_options GDZIE nazwa_opcji=”active_plugins”;
i kliknij „Idź”.
Kliknij „Edytuj”, aby zobaczyć dane wyjściowe zapytania, które powinny wyglądać mniej więcej tak:
A:4: { I:0; s:23: „NazwaPierwszejPlugin/PluginOne.php”; I:1; s:25: „NazwaDrugiej Wtyczki/PluginTwo.php”; I:2; s:43; „NazwaTrzeciejPlugin/PluginTrzy.php”; I:3; s:27: „Nazwa Czwartej Wtyczki/PluginCztery.php”; }
Po uruchomieniu wypróbuj jedną z tych wtyczek, aby ułatwić tworzenie kopii zapasowych WordPress.
Skopiuj i wklej cały wpis do Notatnika lub innego edytora tekstu w celach informacyjnych. Usuń wszystkie wpisy. Możesz to zrobić szybko, zmieniając a:4:{} wpis do:0:{}. Gdy wystawiasz je ponownie, pamiętaj, aby dodać je z powrotem w taki sam sposób, jak są wymienione w pliku Notatnika.
Jeśli możesz zidentyfikować obraźliwą wtyczkę, po prostu pomiń wpis, zmień numerację innych wpisów i a: count i znajdź lepszą wtyczkę!
Niektórzy użytkownicy zgłaszali problemy z transjentami, które odzwierciedlają wywołania informacji przechowywanych w pamięci podręcznej w wp-options. WordPress ma automatycznie usuwać te wpisy i odtwarzać je w razie potrzeby. Czasami nie; w rzeczywistości możesz skończyć z setkami bezużytecznych wpisów. Zwykle nie stanowi to problemu, ale wpisy zawierają zmienne php i mogą wystąpić komplikacje. Są łatwe do usunięcia: wystarczy przejść do PHPMyAdmin i uruchomić:
USUŃ Z `wp_options` GDZIE `option_name` LIKE (‘%\_transient\_%’)
Nie martw się o awarię bazy danych; WordPress w razie potrzeby odtworzy transjenty. Jeśli nadal Cię to denerwuje, nie zapominaj, że istnieją wtyczki WordPress do prawie wszystkiego – w tym do zarządzania i usuwania transjentów.
4. Serwer niedostępny
Jeśli wykonałeś powyższe kroki i nadal nie możesz się połączyć, istnieje duże prawdopodobieństwo, że problem dotyczy serwera hosta.
Awarie i przeciążenia serwerów są trudne do zlokalizowania bez dostępu do narzędzi hostingowych. Jeśli podejrzewasz, że przyczyną problemu jest serwer, najszybszym sposobem rozwiązania tego problemu byłoby znalezienie numeru pomocy technicznej i skontaktowanie się z nim. Skontaktuj się z zespołem pomocy technicznej firmy hostingowej i podaj szczegóły błędu oraz kroki, które podjąłeś, aby go naprawić.
Jeśli nie masz własnego serwera dedykowanego, prawdopodobnie korzystasz z serwera współdzielonego, co oznacza, że witryna kogoś innego może siać spustoszenie na serwerze, powodując awarię Twojej witryny i tuzina innych. Lub mogą doświadczać nagłego zalewu ruchu, z którym serwer po prostu nie może sobie poradzić. Jest to mniej prawdopodobne w przypadku wirtualnego serwera prywatnego lub hostingu zarządzanego przez WordPress, ale sytuacja jest taka, jaka jest, i czasami wszystko, co możesz zrobić, to powiadomić ich o problemie i poczekać, aż zostanie naprawiony.
Hosting zarządzany oznacza, że Twój serwer jest zoptymalizowany do uruchamiania WordPressa, ale w rezultacie możesz utracić niektóre inne funkcje.
Dobrą wiadomością jest to, że powinni się tym zająć – czas pracy jest również cenny dla Twojej firmy hostingowej. Jeśli jest to awaria fizyczna, zazwyczaj dostępny jest serwer rezerwowy lub zapasowy, który można przełączyć w tryb online. Często przeciążenie wymusza ponowne uruchomienie serwera. Jeśli tego rodzaju problemy będą się powtarzać, powiadom hosta, a jeśli nie może on rozwiązać problemu, możesz chcieć wykonać kopię zapasową całej witryny i rozważyć przeniesienie jej w inne miejsce.
Jeśli to Twoja witryna WordPress ma problemy z gwałtownym wzrostem ruchu, możesz poszukać dobrej wtyczki do buforowania. Dzięki temu posty i strony są zapisywane jako pliki statyczne, które można udostępniać użytkownikom, zmniejszając obciążenie serwera.
Jeśli problem leży po ich stronie, powinni być w stanie go zidentyfikować i naprawić.
Na przykład uprawnienia użytkownika mogły zostać zmienione, więc nawet jeśli hasło i nazwa użytkownika są prawidłowe, możesz nie mieć oczekiwanego dostępu. Twój gospodarz będzie musiał zresetować uprawnienia.
Twoje problemy z połączeniem z bazą danych są jednak zazwyczaj wynikiem błędu ludzkiego, wynikającego z drobnych literówek lub zmian, o których nawet nie pamiętamy, lub wtyczek, które mogą naprawić tylko doświadczeni twórcy stron internetowych. Jeśli żaden z tych środków nie zadziała, będziesz musiał współpracować z gospodarzem, aby rozwiązać problemy. Nawet zaczynanie od gołych kości i świeżej zawartości wp i wp-config jest lepsze niż całkowita porażka. Mamy nadzieję, że zachowałeś kopie wszystkiego i możesz je ponownie wprowadzać pojedynczo podczas przebudowy. Przynajmniej w międzyczasie nadal działasz.
Jeśli nic z tego nie pomoże, być może będziesz musiał poszukać pomocy. Pamiętaj, że WordPress to system zarządzania treścią typu open source, który stał się jednym z najpopularniejszych na świecie, z podobno ponad 60 milionami użytkowników.
MySQL i PHP są również bardzo szeroko stosowane.
Przy tego rodzaju społeczności, gdy wszystko inne zawiedzie, istnieje mnóstwo samouczków i forów WordPress.