Mój dostawca FTP (fasthosts) pozwala na maksymalne wykorzystanie tylko 150 MB na utworzoną bazę danych. Jest wystarczająco duży dla większości osobistych zastosowań. Jednak pewnego dnia, po zalogowaniu się do panelu sterowania, zauważyłem, że baza danych, której używam do tworzenia mojego bloga (ta strona), osiągnęła już 23% procentowych zastosowań. Nie mam jednak wielu postów.
To zdecydowanie potencjalny problem. Nie chcę płacić za upgrade przestrzeni kosmicznej, kiedy tak szybko osiągnie 150 MB. A oto szybki sposób na zmniejszenie użycia bazy danych przez witrynę WordPress. W moim przypadku zmniejszył się do 3% po wykonaniu poniższych kroków.
1 Usuń poprawki
W przypadku większości witryn wordpress funkcja „poprawki" postów jest całkowicie bezużyteczna. Rewizja to „migawka” posta, dzięki której możesz wrócić do dowolnego momentu, w którym popełnisz błąd. Wersja z pewnością rośnie, jeśli masz wiele postów, a one po prostu zajmują miejsce.
Upewnij się, że najpierw wykonałeś kopię zapasową bazy danych i wykonałeś następujący kod SQL (na przykład używając PHPAdmin).
DELETE FROM wp_posts WHERE post_type = "revision";
2 Wyłącz wersje
Aby zaoszczędzić przyszłych kłopotów, jeśli nigdy nie korzystasz z funkcji „po weryfikacji”, możesz ją wyłączyć, dodając następujący wiersz w wp_config.php w folderze instalacyjnym WordPress, po następnym wierszu.
define('DB_COLLATE', '');
// add this.
define('WP_POST_REVISIONS', false);
3 Usuń spam-komentarze (a także niezatwierdzone)
W moim przypadku tabela wp_comments zajmuje dużo miejsca niż wp_posts. Dzieje się tak dlatego, że wiele pająków spamowych będzie publikować komentarze na Twojej stronie, aw moim przypadku zostaną one przechwycone jako komentarze spamowe bez powiadamiania Cię. Dni po dniach Twoja baza danych będzie rosła.
Użyj następującego polecenia SQL, aby usunąć wszystkie komentarze inne niż „zatwierdzone”. Pamiętaj, aby najpierw sprawdzić wszystkie „niezatwierdzone” komentarze.
Dostosuj oświadczenie where, jeśli chcesz usunąć tylko komentarze ze spamem.
Możesz umieścić powyższe rozwiązania w crontab, który wykonuje się regularnie, na przykład codziennie. Sugeruje się wykonanie optymalizacji tabeli po wyczyszczeniu odpowiedniej tabeli.