Wpis ten omawia w jaki sposób można zoptymalizować bazę danych strony opartej o PrestaShop.
Skąd pomysł na ten wpis?
Prowadziłem sklep internetowy oparty o Prestashop 1.7. I mimo, że w sklepie jest tylko kilka produktów to baza danych po pobraniu do pliku .sql miała ponad 42 MB!
Czyli dość dużo.
Dlaczego chciałem ją odchudzić?
W tym przypadku baza może nie jest tak duża, ale dla klientów ze sklepami ze znacznie większą ilością produktów i wejść baza danych może mieć naprawdę dużą wagę. Wtedy może być kłopotliwe wykonywanie kopii zapasowych bazy danych, a nawet może ona przekroczyć ograniczenia na hostingu.
W panelu admina miałem zainstalowany moduł „Oczyszczanie Prestashop”. Po uruchomieniu „funkcjonalne ograniczenia integralności” oraz „czyszczenie bazy danych” waga pliku .sql zmniejszyła się do… 41 MB. Tak, tylko 1 MB mniej.
Dlatego postanowiłem ręcznie wyczyścić bazę z danych których osobiście nie używam.
Uwaga! Przed zastosowaniem poniższych wskazówek koniecznie zrób kopię zapasową bazy danych!
Poniżej lista tabel:
ps_connections
ps_connections_page
ps_connections_source
ps_guest
ps_page_viewed
Odpowiadają za logi wejść użytkowników na stronę.
ps_log
Logi zmian w sklepie
ps_search_index
ps_search_word
Indeksy do wyszukiwarki, możemy je odbudować po wyczyszczeniu
ps_smarty_cache
Cache do systemów szablonu smarty
Zapytanie do bazy danych, które usunie te dane:
truncate ps_connections;
truncate ps_connections_page;
truncate ps_connections_source;
truncate ps_guest;
truncate ps_page_viewed;
truncate ps_log;
truncate ps_search_index;
truncate ps_search_word;
truncate ps_smarty_cache;
Zapytanie wykonujesz na własną odpowiedzialność.
Po usunięciu indeksu wyszukiwarki należy go przebudować. Możemy to wykonać w panelu admina w dziale Konfiguruj -> Preferencje -> Szukaj
W moim przypadku po wykonaniu tych czynności rozmiar bazy spadł do 2 MB!
Jeśli macie jakieś sugestie zachęcam do dodawania komentarzy!