Moja tabela wp_options zawierała tylko około 235 wierszy danych. Próbowałem indeksować tabelę, ale to nie pomogło.
Okazuje się, że około 150 opcji przejściowych zostało wstawionych do tabeli, ale nie zostało automatycznie usuniętych.
Nie wiem, czy jest to powiązane, czy nie, ale przeglądałem moje pliki /var/log/apache2/access.log i zauważyłem, że wiele (prawdopodobnie zagrożonych) serwerów Amazon Web Services (adresy IP zaczynające się od 54). XXX i 32.XXX) próbowały wykorzystać katalog /~web-root-dir/xmlrpc.php.
Po rozwiązywaniu problemów zapytałem tabelę wp_options o nazwy opcji zawierające „przejściowe”
wybierz * z wp_options gdzie nazwa_opcji jak „% transient %”;
Jednym z pól zwróconych z tego zapytania jest „wartość_opcji”, która ma typ danych LONGTEXT. Zgodnie z dokumentacją mySQL, pole LONGTEXT (dla każdego wiersza) może pomieścić do 4 gigabajtów danych.
Kiedy wykonałem zapytanie, niektóre wiersze (pamiętaj, że pracowały z wierszami zawierającymi „przejściowy”) zawierały ogromne ilości danych w polu option_value. Przeglądając wyniki, zobaczyłem również coś, co wyglądało jak próby wstrzyknięcia poleceń do procesu wp-cron z nadzieją, że zostaną one wykonane w cyklu (cyklach) crona.
Moim rozwiązaniem było usunięcie wszystkich „przejściowych” wierszy. Nie zaszkodzi to serwerowi, ponieważ wiersze „przejściowe” zostaną automatycznie ponownie wypełnione (jeśli powinny tam być).
Po wykonaniu tej czynności serwer ponownie zareagował.
Zapytanie o usunięcie tych wierszy:
USUŃ z wp_options gdzie nazwa_opcji jak „% transient %”;
Dodałem również adres IP AWS / 8 superbloków do mojej zapory ogniowej (-: