Duża baza WordPressa nie jest sama w sobie dowodem problemu. Stronę może spowalniać jedno kosztowne zapytanie, powtarzana praca albo sposób ładowania ustawień. Zanim usuniesz rewizje i transienty, ustal, która operacja trwa za długo. Porządki powinny wynikać z diagnozy oraz zasad przechowywania danych.
Krótka odpowiedź
Optymalizację bazy WordPressa zacznij od pomiaru wolnej czynności, zapytań i autoload. Ustal właścicieli danych oraz wersję silnika, przygotuj sprawdzoną kopię i wykonaj próbę poza produkcją.
Duża opcja lub ostrzeżenie Site Health nie oznaczają zgody na usunięcie rekordu. Zmieniaj ograniczony zakres, a wynik potwierdź tym samym pomiarem i kontrolą funkcji strony.
Usługi KC Mobile
Potrzebujesz konkretnej funkcji na stronie?
Opisz, co użytkownik ma móc zrobić, i podaj adres obecnej strony, jeśli już działa. Możesz dołączyć przykład. Dobierzemy zakres prac do istniejącej witryny, a nową stronę z dedykowanym projektem przygotujemy od 3 500 zł netto.
Zmierz objaw i zapisz wersję środowiska
Wybierz konkretną czynność: otwieranie produktu, wyszukiwanie, listę zamówień albo zapis wpisu. Zapisz adres, stan logowania i warunki cache. Porównywanie panelu administratora z buforowaną stroną główną nie pokaże wpływu tej samej pracy bazy. Powtórz próbę, aby zobaczyć, czy opóźnienie jest stałe, czy występuje tylko czasami.
Query Monitor pomaga powiązać zapytania z odpowiedzialną wtyczką, motywem lub funkcją. Oceniaj czas i powtórzenia, a nie tylko licznik. Kilka drogich zapytań może wymagać więcej uwagi niż wiele krótkich odczytów. Zapisz, jakie narzędzia diagnostyczne były aktywne, ponieważ dodatkowy pomiar również może mieć koszt.
Ustal wersję WordPressa, PHP i silnika bazy. MySQL oraz MariaDB nie muszą zachowywać się identycznie w każdej operacji administracyjnej. Sprawdź też, czy problem dotyczy oczekiwania na bazę, czy innej części żądania. Przy wolnej odpowiedzi całego serwera pomocny jest poradnik o hostingu WordPressa.
Nie zakładaj, że zmniejszenie bazy o określoną liczbę megabajtów automatycznie skróci czas otwierania strony. Pierwszy zapis diagnozy powinien zawierać objaw, podejrzaną operację i dowód, który pozwoli później ocenić zmianę.
Opisz, co użytkownik ma móc zrobić, i podaj adres obecnej strony, jeśli już działa. Możesz dołączyć przykład. Dobierzemy zakres prac do istniejącej witryny, a nową stronę z dedykowanym projektem przygotujemy od 3 500 zł netto. Omów zmianę w WordPressie
Przygotuj kopię, próbę odtworzenia i plan nowych danych
Przed zmianą przygotuj kopię obejmującą potrzebny zakres i sprawdź możliwość jej odtworzenia. Eksport bazy przechowuj poza publicznym katalogiem witryny, z kontrolą dostępu. Może zawierać dane klientów i konfigurację integracji. Samo pojawienie się pliku nie dowodzi, że eksport zakończył się poprawnie.
Kopia nie daje obietnicy cofnięcia każdej pomyłki w minutę. W działającym sklepie od jej utworzenia mogą pojawić się nowe zamówienia, konta i zmiany płatności. Nadpisanie bazy starszym stanem może je utracić. Ustal sposób zachowania tych danych oraz warunki powrotu przed rozpoczęciem prac. Szczegółową kontrolę opisuje diagnoza kopii zapasowej WordPressa.
Próbę wykonuj w odizolowanym środowisku z odłączoną pocztą, płatnościami, webhookami i zapisem do produkcyjnego CRM. Ogranicz dane osobowe do zakresu potrzebnego dla testu. Przygotuj listę sprawdzanych funkcji: logowanie, zapis treści, formularz i właściwe operacje sklepu.
Dla każdej planowanej zmiany zapisz właściciela danych, warunek kwalifikacji rekordów oraz oczekiwany wynik. Jeśli nie potrafisz wyjaśnić roli tabeli albo opcji, pozostaw ją do dalszej analizy. Nazwa zawierająca fragment dawnej wtyczki jest tropem, a nie dowodem zbędności.
Rozpoznaj tabele i odpowiedzialność za ich zawartość
Zacznij od odczytowego zestawienia tabel, ich rozmiarów i przyrostu. Sprawdź właściwy prefiks oraz to, czy baza obsługuje jedną witrynę, multisite czy dodatkowe aplikacje. Podobne nazwy nie oznaczają tego samego przeznaczenia. Nie obejmuj automatycznie porządkami wszystkich tabel widocznych na koncie.
| Obszar | Co ustalić przed zmianą |
|---|---|
| Treści i rewizje | Potrzebna historia redakcyjna i powiązane metadane |
| Komentarze, spam i kosz | Pomyłki klasyfikacji oraz okres zachowania |
| Opcje | Właściciel, sposób odczytu i znaczenie konfiguracji |
| Transienty | Wygaśnięcie, używany cache i koszt ponownego utworzenia |
| Tabele rozszerzeń | Model danych, integracje i własna procedura czyszczenia |
Wielkość tabeli może wynikać z prawidłowej historii sklepu lub rozbudowanej zawartości. Nie jest synonimem bałaganu. Porównaj wzrost z rzeczywistymi zdarzeniami: importem, nową funkcją, logowaniem lub zmianą retencji. Dane techniczne i biznesowe mogą mieć różne zasady przechowywania.
Po wyłączeniu wtyczki jej ustawienia mogą być zachowane celowo, aby umożliwić powrót. Część rekordów może też należeć do aktywnego dodatku korzystającego z podobnej nazwy. W pierwszej kolejności szukaj dokumentacji producenta i powiązań w kodzie. Narzędzie do czyszczenia, które oznacza rekord jako pozostałość, nie zastępuje tej weryfikacji.
Sprawdź zapytania i indeksy przed usuwaniem danych
Powiąż kosztowne zapytanie z czynnością i odpowiedzialnym kodem. Ustal, czy problemem jest szeroki zakres odczytu, powtarzanie tej samej pracy, blokada czy rosnąca liczba danych. Czyszczenie rewizji nie musi wpłynąć na zapytanie wykonywane przez filtr produktów w innej tabeli.
Analizę planu zapytania i indeksów prowadź dla właściwej wersji silnika oraz reprezentatywnych danych. Mała lokalna próbka może zachowywać się inaczej niż katalog produkcyjny. Jeśli narzędzie diagnostyczne rzeczywiście wykonuje zapytanie, uwzględnij jego koszt i zakres; nazwa analizy nie oznacza automatycznie operacji bez obciążenia.
Dodatkowy indeks może wspierać konkretny odczyt, ale zajmuje miejsce i wpływa na zapisy. Nie kopiuj zestawu indeksów z przypadkowego poradnika do każdej instalacji. Uzgodnij zmianę z osobą odpowiedzialną za schemat i sprawdź, czy aktualizacja rozszerzenia nie zakłada innej struktury.
Cache obiektowy jest osobnym narzędziem ograniczania powtarzalnych odczytów. Nie usuwa przyczyny każdego wolnego zapytania ani nie naprawia błędnego modelu danych. Najpierw potwierdź, czego oczekujesz od cache, a następnie odbierz poprawność aktualizacji danych. Dla prób lokalnych przydatne jest rozdzielenie kosztów opisane przy wolnym WordPressie na localhost.
Autoload: uwzględnij aktualne wartości i znaczenie opcji
Autoload dotyczy ustawień pobieranych automatycznie w mechanizmie opcji WordPressa. Nie należy sprowadzać go do jednego zapytania z warunkiem yes dla każdej wersji. Funkcja wp_autoload_values_to_autoload uwzględnia wartości yes, on, auto-on i auto; od WordPressa 6.6 lista podlega także filtrowaniu. Pomiar powinien odpowiadać rzeczywistej konfiguracji.
Opis zmian Options API przedstawia ostrzeżenie Site Health dla łącznego rozmiaru przekraczającego 800 000 bajtów. To sygnał do analizy, nie lista rekordów do skasowania ani uniwersalny dowód przyczyny awarii. Nie utożsamiaj również dowolnego wyniku powyżej jednego megabajta z niepotrzebnym balastem.
Przygotuj odczytowe zestawienie nazw, rozmiarów i właścicieli największych opcji. Ustal, kiedy są potrzebne, kto je aktualizuje oraz czy producent przewiduje ograniczenie ich ładowania. Wyłączenie autoload zmienia sposób dostępu do danych, ale nie usuwa samej opcji. Może przesunąć koszt do osobnych odczytów, dlatego też wymaga testu.
WordPress udostępnia API wp_set_option_autoload_values do kontrolowanej zmiany tej właściwości. Dobór API nie zwalnia z określenia zakresu i zgodności wersji. Nie zmieniaj przypadkowo wartości w całej tabeli ani nie usuwaj opcji tylko dlatego, że nie rozpoznajesz jej nazwy. Zachowaj poprzedni stan potrzebny do porównania.
Porządkuj rewizje, transienty i pozostałości według zasad
Rewizje umożliwiają powrót do wcześniejszej treści. Ich retencję uzgodnij z osobami redagującymi stronę, zamiast kasować całą historię. Ograniczenie przyszłej liczby rewizji jest inną decyzją niż usunięcie istniejących rekordów. Wydłużenie interwału autozapisu również ma koszt: większy zakres pracy może pozostać niezapisany przy awarii edytora.
Bezpośrednie usunięcie rewizji z jednej tabeli może pozostawić powiązane metadane. Użyj procesu świadomego modelu WordPressa i zweryfikuj jego zakres na kopii. Nie zakładaj, że każdy produkt lub polecenie WP-CLI wykonuje wszystkie operacje przez API aplikacji.
WP-CLI transient delete rozróżnia usuwanie wygasłych transientów od usuwania wszystkich. To istotna różnica: skasowanie nadal używanego cache może wywołać ponowne zapytania lub wywołania usług. Sprawdź także, czy dane przechowuje baza, czy zewnętrzny cache obiektowy. Nie szukaj i nie usuwaj wszystkiego szerokim dopasowaniem fragmentu nazwy.
Spam oraz kosz wymagają przeglądu pomyłek i ustalonej retencji. Przy wtyczkach takich jak WP-Optimize czy Advanced Database Cleaner oceń dokładną listę operacji w swojej wersji. Nie uruchamiaj wszystkich zaznaczonych porządków tylko dlatego, że panel pokazuje liczbę kandydatów. Harmonogram ustaw dopiero po odbiorze ręcznie wybranego zakresu i ustaleniu odpowiedzialności za jego skutki.
Ustal, czy przebudowa tabel jest rzeczywiście potrzebna
Usuwanie rekordów i reorganizacja tabel to różne działania. OPTIMIZE TABLE nie jest obowiązkowym ostatnim krokiem każdych porządków. Potrzeba operacji zależy od silnika, struktury, wcześniejszych zmian i celu, na przykład sposobu odzyskania miejsca. Samo zmniejszenie liczby rekordów nie dowodzi, że każdą tabelę należy od razu przebudować.
Dokumentacja MySQL 8.4 opisuje zachowanie OPTIMIZE TABLE dla określonych silników, w tym przebudowę InnoDB oraz związane wymagania i blokady. Nie przenoś tych szczegółów automatycznie na dowolną wersję MySQL lub MariaDB. Sprawdź miejsce robocze, czas, obciążenie i wpływ na dostępność przed zaplanowaniem operacji.
Polecenie wp db optimize korzysta z narzędzia bazy, więc sama obecność WP-CLI nie oznacza pracy wyłącznie przez API WordPressa. Trzeba znać zakres i skutki polecenia tak samo jak przy innym narzędziu administracyjnym.
Jeśli analiza uzasadnia przebudowę, wybierz właściwe tabele, wykonaj próbę w odpowiednim środowisku i uzgodnij okno zmiany. Zachowaj kopię oraz warunki wycofania. Nie rozpoczynaj kosztownej operacji na aktywnym sklepie tylko po to, by zniknął komunikat narzędzia do porządków. Najpierw ustal, jaką korzyść chcesz potwierdzić.
Porównaj wynik i zaplanuj dalsze utrzymanie
Powtórz czynność mierzoną przed zmianą, z tym samym stanem logowania, zakresem danych i opisanym cache. Zanotuj czas zapytań oraz całej odpowiedzi. Jeżeli baza zajmuje mniej miejsca, ale użytkownik nadal czeka równie długo, nie przedstawiaj porządków jako potwierdzonego przyspieszenia strony.
Sprawdź również funkcje zależne od zmienionych danych: zapis treści, logowanie, formularz, konfigurację sklepu i właściwe integracje. Testy mają używać izolowanych danych oraz przechwytywać wiadomości. Nie twórz prawdziwych zamówień, płatności ani konwersji do sprawdzenia działania po czyszczeniu.
Ustal rytm przeglądu według przyrostu danych i zmian aplikacji. Warto wrócić do pomiaru po istotnej aktualizacji, imporcie albo zmianie sposobu zapisu logów, ale nie każda kontrola musi kończyć się usuwaniem. Zachowaj opis zakresu, przyczyny i wyniku poprzedniej operacji.
Obsługa WordPressa może obejmować diagnozę bazy i utrzymanie uzgodnionych zasad. Przy przygotowaniu strony internetowej dobrze określić właścicieli danych oraz procedurę kopii od początku. Skontaktuj się z KC Mobile, opisując wolną czynność i dotychczasowe pomiary; na tej podstawie można ustalić zakres analizy oraz dalszego wsparcia.
Wspomniane narzędzia
Najczęściej zadawane pytania
Kiedy baza WordPressa wymaga optymalizacji?
Co oznacza duży autoload w WordPressie?
Czy można usuwać wszystkie transienty?
Kiedy OPTIMIZE TABLE ma sens?
Jak potwierdzić, że optymalizacja bazy pomogła?
Potrzebujesz konkretnej funkcji na stronie?
Opisz, co użytkownik ma móc zrobić, i podaj adres obecnej strony, jeśli już działa. Możesz dołączyć przykład. Dobierzemy zakres prac do istniejącej witryny, a nową stronę z dedykowanym projektem przygotujemy od 3 500 zł netto.
