KODY SNIPPETS

  Przeczytasz w: 2 - 3 min
MYISAM KONWERSJA NA INNODB - OPTYMIZACJA DUŻYCH STRON JOOMLA MYISAM KONWERSJA NA INNODB - OPTYMIZACJA DUŻYCH STRON JOOMLA Joomla GURU
poniedziałek, 17 sierpień 2020 08:00

MYISAM KONWERSJA NA INNODB - OPTYMIZACJA DUŻYCH STRON JOOMLA


Zastanawiałeś się kiedyś czy poprzez bazę danych możesz przyspieszyć i zoptymalizować swoją stronę? Jeśli nie to odpowiedź jest prosta. Tak możesz. Najprostszym i najszybszym sposobem będzie konwersja silnika bazy danych z MyISAM na InnoDB

KORZYŚCI Z KONWERSJI

Powodem, dla którego chcesz konwersji, jest fakt, że MyISAM blokuje całą tabelę podczas operacji  takich jak dodawanie, usuwanie lub aktualizowania wierszy, co oznacza, że ​​każda kolejna czynność (tworzenie, odczytywanie / pobieranie, aktualizacja, usuwanie) będzie musiała poczekać, aż blokada zostanie zwolniona i operacja zostanie wykonana. Oczywiście czas blokowania jest zwykle bardzo krótki, ale sytuacja może stać się bardzo nieprzyjemna, gdy ma miejsce masowa aktualizacja tabeli krytycznej, więc wszystkie zapytania wymagające tej tabeli będą musiały czekać przez długi czas, tworząc kolejkę zapytań, ostatecznie powodując obciążenie serwera (spowodowane przez MySQL). 

Silnik InnoDB, rozwiązuje to wąskie gardła blokujące tabelę. Jednak kwestia używania jednego nad drugim jest subiektywna, ponieważ żaden z nich nie jest doskonały we wszystkich sytuacjach. Oba silniki MyISAM jak i InnoDB mają mocne i słabe strony. Dokładna znajomość struktury bazy danych i praktyk dotyczących zapytań ma kluczowe znaczenie przy wyborze najlepszego silnika jednak w większość przypadków InnoDB będzie lepszym wyborem niż MyISAM. 

MyISAM nadal będzie dobrym wyborem, gdy na Twojej witrynie w bardzo dużej większość tylko odczytujemy duże tabele. Wówczas MyISAM szybciej zablokuje całość niż InnoDB ,które musi wyszukać konkretny wiesz tabeli i zablokować.

KONWERSJA MYISAM NA INNODB

Przed jakimikolwiek operacjami konwersji wykonaj kopię zapasową bazy danych. 

Konwersja konkretnej tabeli odbywa się za pomocą komendy:

ALTER TABLE prefix_content ENGINE=InnoDB;

Zaloguj się do swojej bazy na serwerze lub wykorzystaj phpMyadmin.

Z POZIOMU PHPMYADMIN 

Zaloguj się panelu phpMyadmin i odszukaj tabele z silnikiem MyISAM.

tabele myisam phpmyadmin

Wybierz konkretną tabelę, a następnie przejdź do OPERATIONS.

phpmyadmin zmiana engine

Zmień silnik i wykonaj. Po zatwierdzeniu i poprawnej operacji wyświetli się komunikat, że wszystko przebiegło poprawnie.

PODSUMOWANIE

Nowsze instalacje Joomla 3 powinny mieć wszystkie core tabele już obsługiwane za pomocą silnika InnoDB, kilka będzie MEMORY (nie zmieniaj ich!). Jednak starsze instalacje nawet po migracji do wersji 3 wymagają osobnego potraktowania. Tak samo jeśli mamy zainstalowane rozszerzenia trzecie, które mogą wykorzystywać MyISAM.

Największe korzyści z konwersji dostaną duże zbiory i prawdopodobnie to zauważysz. Aczkolwiek zmiana jest również warta dla mniejszych instalacji, które zawierają różne rozszerzenia firm trzecich. Optymalizacja pod każdym aspektem jest warta rozważenia. A gdyby się zdarzyło, że sobie nie radzisz możesz zawsze zgłosić się po pomoc i skorzystać z kompleksowej usługi u nas.

UWAGA!
Upewnij się, że używasz MySQL 5.6.4 lub nowszego, w przeciwnym razie możesz napotkać problemy, w których indeksowanie pełnotekstowe nie było eszcze obsługiwane przez InnoDB.

 

Dodatkowe informacje

  • POZIOM TRUDNOŚCI 300:
Czytany 277 razy Ostatnio zmieniany poniedziałek, 17 sierpień 2020 08:25
Oceń ten artykuł
(1 głos)
Marcin Równicki

Ekspert w dziedzinie Joomla! z długoletnim stażem. Pasjonata od czasów MAMBO, który naucza online o możliwościach Joomla! Piszę poradniki oraz prowadzi jedyny w Polsce cykl darmowego video "Joomla To Proste" w którym uczy o rozszerzonych możliwościach Joomla! Lubi optymalizować witryny, aby te działały jak najszybciej. 

Ponadto lubię dobre kino oraz seriale, dziele się recenzjami na https://cobejrzec.pl  

Spoglądam w chmury Public Cloud, gdzie staram się zgłębiać wiedzę na temat (Amazon Web Services, Azure, Google Cloud Computing)

"Jeśli coś jest niemożliwe do zrobienia, musi się znaleźć ktoś kto tego nie wie, przyjdzie i to zrobi." - A.E.

https://rownicki.pl
 

joomla guru logo small
Marcin Równicki
+48 505 892 678
Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie w przeglądarce obsługi JavaScript.
Andrzeja Wajdy 5/11, Będzin 42-500
 NIP 6252158732

Fanpage Joomla Guru  youtube Joomla Guru