Деньги, как известно, имеют различные функции. Одной из них является непрестанное движение денег в обращении, обслуживание процесса обращения. Без выполнения деньгами этой функции торговля была бы невозможна.

Optymalizacja bazy danych Mysql

  1. 1. Tworzenie kopii zapasowej bazy danych
  2. 2. Wyłącz korekcje postów i ustaw minimalny okres przechowywania usuniętych plików w koszu.
  3. 3. Usuń wersje postów
  4. 4. Optymalizuj wpisy w wp-post
  5. 5. Wyczyść wp-postmeta
  6. 6. Usuń komentarze spamowe
  7. 7. Usuń pingbacks
  8. 8. Wyłącz polecenia ping
  9. 9. Zainstaluj wtyczkę Optimize DB

Cześć wszystkim
Dzisiaj zajmiemy się czymś takim jak optymalizacja bazy danych mysql! Sam dowiedziałem się o tym całkiem niedawno i spieszę się dzielić z wami, ponieważ informacje, które ci teraz powiem, są bardzo cenne!

optymalizacja bazy danych

Po co to wszystko? Na co to wpływa? Jak przełożyć się na rzeczywistość? Postaram się dać jasną odpowiedź na wszystkie te pytania w tym poście!

A teraz trochę tła. Ogólnie otrzymałem niedawno list na mój adres e-mail w następujący sposób:

W ciągu ostatnich 3 dni średni poziom obciążenia stworzony przez konto ******* wynosił 119% dopuszczalnego poziomu planu taryfowego. Zalecamy przejście na stawki VPS. Należy pamiętać, że w przypadku regularnego przekraczania limitów zastrzegamy sobie prawo do zablokowania konta zgodnie z klauzulą ​​Umowy ...

Obie na, płynęły - pomyślałam w tej chwili! Zgadzam się, nie jest przyjemnie otrzymywać takie listy. A ponieważ zetknąłem się z tym problemem po raz pierwszy, czy możesz sobie wyobrazić, jak byłem zdezorientowany? Moje oburzenie nie znało granic! Co nafig VPS? Mogę tylko powiedzieć, że rozliczyłem się w jednym tempie, a tutaj zaproponowano mi przejście na hosting wirtualny, który jest trzy razy droższy. Cóż, nie, chłopaki, myślę, że jest jeszcze trochę za wcześnie.

Piszę w liście zwrotnym do mojego hostera, prosząc mnie o wyjaśnienie, z jakim przerażeniem mój dach przechodzi przez dach? W końcu mój blog ma zaledwie dwa miesiące. Tak, a frekwencja nie jest wspaniała. Ogólnie rzecz biorąc, piszę, że kategorycznie przeciwstawiam się przechodzeniu na VPS, uważam, że nie jest to wskazane na tak wczesnym etapie rozwoju zasobów i proszę was o wskazanie moich błędów, co z nimi zrobić i jak nimi sterować w przyszłości!

W odpowiedzi otrzymuję następujące informacje:

Drogi subskrybencie, nie zamierzamy cię teraz rozłączyć, to banalne ostrzeżenie, ale mówią, że musimy coś z tym zrobić. Problem nadmiernego obciążenia nie zależy bezpośrednio od frekwencji, ale w dużej mierze zależy od niewłaściwej optymalizacji zasobów. Aby śledzić obciążenie, przenieśliśmy cię do licznika panelu sterowania, który jest aktualizowany co 10 minut:

Aby śledzić obciążenie, przenieśliśmy cię do licznika panelu sterowania, który jest aktualizowany co 10 minut:

Cóż, dzięki za wyjaśnienie - myślę sobie. Pójdę przestudiować problem. Po wpisaniu w Internecie prośby „jak zmniejszyć obciążenie hostingu”, zdałem sobie sprawę, że nie jestem jedyny, ale w rzeczywistości problem był dość istotny. I wcześniej czy później wpłynie to na wielu. Po dokładniejszym przejrzeniu problemu zdałem sobie sprawę, że mam dwie drogi wyjścia z tej sytuacji:

  1. Szukaj pomocy u profesjonalistów (freelancerów), płacąc im określoną kwotę pieniędzy, która zawsze będzie na czas.
  2. Spróbuj rozwiązać problem samodzielnie.

Wybrałem więc drugą opcję i powiem ci szczerze, do tej pory nie żałowałem ani jednego grama. Udało mi się zmniejszyć obciążenie hostingu dwa lub trzy razy. Przekonaj się:

Różnica na twarzy! Teraz pokażę ci i powiem ci, co zrobiłem w tym celu:

- zoptymalizował bazę danych mysql, co znacząco wpłynęło na zmniejszenie obciążenia hostingu i przyspieszenie wordpress;
- pozbyłem się około 8 niepotrzebnych wtyczek.
- przyspieszył wordpress, edytując kilka plików motywów na swoim blogu.

Ponieważ materiał jest dość obszerny, postanowiłem podzielić go na trzy części. W tym artykule dowiesz się, jak zmniejszyć obciążenie hostingu, optymalizując bazę danych. W następnym artykule powiem ci jak zastąpić część wtyczek kodami . I ostatni artykuł będzie włączony przyspieszenie blogu . Kiedy zrobiłem to z moim zasobem, byłem zszokowany, jak mój blog zaczął się ładować! W porównaniu do tego, co to było - zaczął latać.

Ogólnie rzecz biorąc, materiał, który czerpiesz z tych trzech postów, jest po prostu niesamowity. Nie przegap!

Przed rozpoczęciem wykonywania różnych działań z bazą danych należy wykonać kopię zapasową. Aby w razie problemów wszystko można szybko przywrócić. Baza danych zawiera całą historię zasobu, przechowuje wszystkie rekordy, które są obecne na Twoim blogu! Ogólnie rzecz biorąc, radzę przestrzegać zasady, aby codziennie zapisywać bazę danych! Zajmie ci to tylko 1 minutę, ale zawsze będziesz dobrze spał. Wiesz, wszystko może się zdarzyć.

1. Tworzenie kopii zapasowej bazy danych

Aby ułatwić połączenie z serwerem i przetwarzanie danych, używam FileZilla klienta FTP . Bardzo fajna rzecz, jakoś napiszę osobny post o tym kliencie. Ogólnie rzecz biorąc, musisz przejść do swojego serwera i znaleźć w nim kartę „Bazy danych” lub „Bazy danych MySQL”, coś takiego. Na każdym serwerze znajduje się baza danych, po przejściu serwer może zażądać hasła. Powinieneś to mieć. Przy zakupie hasła do hostingu.

W rezultacie powinieneś być tutaj na tej stronie, phpMyAdmin:

W rezultacie powinieneś być tutaj na tej stronie, phpMyAdmin:

Przejdź do bazy danych, klikając jej nazwę. Zobaczysz tabelę bazy danych (kliknij, aby powiększyć):

Zobaczysz tabelę bazy danych (kliknij, aby powiększyć):

Kliknij „Eksportuj” i „OK”. Zapisz na swoim komputerze. Wszystko, baza danych jest zapisana, teraz możemy rozpocząć jej optymalizację. Pamiętaj, że jeśli na twoim serwerze znajduje się pole „Zapisz jako plik”, nie zapomnij umieścić przed nim znacznika! Pamiętaj też, ile waży wasza baza danych, a następnie zobacz, ile waży po optymalizacji.

Musiałem to zważyć, aby zoptymalizować 26 Mb - to jest HORROR, ale co teraz? A teraz waży tylko 2 Mb! Wyobraź sobie, ile śmieci zawierała w sobie? Czy możesz sobie wyobrazić, jaki ładunek utworzyła na serwerze? Po zoptymalizowaniu bazy danych mój blog zaczął latać jak odrzutowiec! Ogólnie rzecz biorąc, po wykonaniu wszystkich czynności opisanych poniżej poczujesz znaczącą różnicę!

2. Wyłącz korekcje postów i ustaw minimalny okres przechowywania usuniętych plików w koszu.

Czym jest kontrola postów? Gdy piszesz post na blogu, wordpress automatycznie, po pewnym czasie, zapisuje kopię zapasową każdego postu w bazie danych, na ogół nie zapisuje automatycznie. Teraz wyobraź sobie, kiedy piszesz 50 postów na blogu? Ile kopii Twoich postów zostanie zapisanych? To jest TINNESS! Podczas pisania postu masz już co najmniej 10 automatycznych zapisów!

Oprócz tego, jeśli usuniesz pliki, gromadzą się one w Twoim koszyku, który również ładuje bazę danych. Oczywiście dobrze jest, jeśli natychmiast usuniesz plik z kosza, ale często zdarza się, że wielu ludzi o tym zapomina, a niektórzy po prostu się zapychają! I och, jak nie dobrze ... Baza rośnie, obciążenie serwera coraz bardziej, blog ładuje się wolniej i wolniej ... Czy zastanawiałeś się kiedyś, jakie mogą być konsekwencje?

Oto główna część konsekwencji, ale nie wszystkie: redukcja indeksowanie , częste awarie, pogorszenie czynniki behawioralne , obniżenie pozycji w wydawaniu wyszukiwarek ... A potem autor rozpaczał z nieuzasadnionych oczekiwań. Pragnienie blogowania z czasem znika i to wszystko! Upadek!

To wszystko, co mówię? Baza danych musi być stale monitorowana i utrzymywana w odpowiednim stanie. Zrozum, że baza danych jest sercem bloga. Przy stałym obciążeniu serca nie jest to konieczne śmieci, nie wytrzyma z czasem i ZATRZYMA! Myślę, że mnie rozumiesz? Tak dużo horrorów i przejdź do optymalizacji bazy danych.

Otwórz plik wp-config.php, który znajduje się w katalogu głównym Twojego bloga, tj. twój hosting / httpdocs lub public_html (w zależności od hostingu) /wp-config.php. I wstaw do niego dwie linie:

1 2 define ('WP_POST_REVISIONS', false); define ('EMPTY_TRASH_DAYS', 1);


Numer linii 1 wyłącza rewizję postów, linia numer 2 oznacza ile dni usunięte pliki będą przechowywane w koszyku. Jak widzisz, umieściłem „1”, możesz oczywiście umieścić „0”, ale jeśli nagle, przez zaniedbanie, twoja ręka się załamie i klikniesz link „usuń”, wszystko to jest CAPETTE!

I usiądź przy komputerze przez 5-8 godzin, uwierz mi, to możliwe! Więc wolę zostawić tsiferku „1”. Oczywiście po usunięciu pliku lepiej natychmiast wyczyścić koszyk ręcznie, ale nawet jeśli go zapomnisz, po dniu plik z koszyka zostanie automatycznie usunięty! Oto jak to wygląda ode mnie:

Po rozwiązaniu tego problemu, śmiało.

3. Usuń wersje postów

Jeśli w poprzednim akapicie wyłączyliśmy rewizję postów, w tym momencie musimy usunąć wszystkie wersje postów zgromadzonych podczas całego blogowania. Jeśli nigdy tego nie zrobiłeś, masz ich ogromną liczbę! Zróbmy to. Skopiuj tę linię tutaj:

DELETE FROM wp_posts WHERE post_type = "revision"


Wróć do bazy danych MySQL, jak opisano w pierwszym akapicie. Przejdź do karty SQL, wklej skopiowaną linię do pola i kliknij „OK”:

Baza danych zapyta:

Odpowiadamy „OK” i sprawdzamy, ile niepotrzebnych poprawek zawierało bazę danych i ile czasu zajęło przetworzenie żądania. I każdy czas daje swój ładunek:

Sprzątałem 3 dni temu, więc nie miałem jeszcze wielu poprawek. Kiedy po raz pierwszy posprzątałem bazę, usunąłem już 1800 linii! Czy możesz sobie wyobrazić, ile kopii niepotrzebnych postów było w nim przechowywanych? Śmiało.

4. Optymalizuj wpisy w wp-post

Folder wp-post zawiera wszystkie wpisy bloga. W taki sam sposób, jak w poprzednim akapicie, kopiujemy linię:


i wstaw do pola zapytania SQL. Kliknij „OK”, szukamy:

Kliknij „OK”, szukamy:

Wszystko, żądanie jest realizowane!

5. Wyczyść wp-postmeta

Co dokładnie będziemy czyścić? Folder wp-postmeta zawiera:

- czas ostatniej edycji któregokolwiek z postów. Nie ma żadnej wartości, a obciążenie serwera, które nie ma wartości, ale daje;
- treść poprzednia CNC (zrozumiała ludzka urla). Jeśli kiedykolwiek zmieniłeś permalink w dowolnym poście. Następnie podczas jego zmiany nie jest usuwany, ale ustawia się w folderze wp-postmeta i ładuje bazę.

Robimy to samo, skopiuj ten kod tutaj:

DELETE FROM `wp_postmeta` WHERE` meta_key` IN ('_edit_lock', '_edit_last', '_wp_old_slug')


Wstaw go do pola zapytania SQL i kliknij OK. Patrzymy na wynik:

Nie zmieniłem referencyjnego CNC, ale znalazłem błędy w postach i po edycji dokonałem drugiego zapisu, stąd 6 linii.

6. Usuń komentarze spamowe

Robi się to w podobny sposób, skopiuj kod:

DELETE FROM wp_comments WHERE comment_approved = „spam”;


wstaw w polu zapytania SQL, kliknij „OK”, zobacz wynik:

Jak widzisz „0”. Po wypełnieniu tego żądania zapomnisz o spamie!

7. Usuń pingbacks

Pingbacks to powiadomienia, które ktoś łączy z Twoim postem lub stroną. Nie potrzebujemy tego, dodatkowe obciążenie! Usuń!

Skopiuj kod:

DELETE FROM wp_comments WHERE comment_type = 'pingback';


Co więcej, wszystko jedno.

8. Wyłącz polecenia ping

Z ostatniego elementu dowiedzieliśmy się, że pingwiny nie mają żadnych korzyści dla naszego zasobu, ale tylko go zatykają. Więc wyłączmy je całkowicie. Skopiuj ten kod:

UPDATE wp_posts p SET p .ping_status = 'closed'


a potem już wiesz, co robić!

Jak ci się podoba to sprzątanie? Lubisz to? A teraz spójrz, ile ważyła twoja baza danych po jej optymalizacji? Czy rozmiar znacznie się zmniejszył? I powiedziałem ci! Zobacz, jak zaczął się ładowanie Twojego bloga! On musi latać! Ale to nie wszystko na dziś. Teraz rozważymy kolejny punkt końcowy, który również znacznie poprawi optymalizację.

9. Zainstaluj wtyczkę Optimize DB

Wspomniałem już krótko o tej wtyczce w tym poście . Przyjrzyjmy się bliżej, jak go używać. Ta wtyczka, jak zgadłeś, pomaga zoptymalizować bazę danych! Pobierz archiwum za pomocą wtyczki na swoim komputerze, więc aktywuj:

Następnie przejdź do panelu „Narzędzia”, wybierz „Optymalizuj DB” i kliknij „Optymalizuj teraz”

Wszystko, twoja baza danych jest dodatkowo zoptymalizowana za pomocą wtyczki:

Po optymalizacji dezaktywuj wtyczkę, aby nie obciążała dodatkowego zasobu. I na ogół radzę wykonywać wszystkie opisane powyżej czynności raz w miesiącu, a nawet częściej. Twój blog zostanie załadowany błyskawicznie, a obciążenie serwera będzie minimalne.

W następnej części postu pokażę Ci, jak zastąpić część niepotrzebnych wtyczek kodami. Nie przegap niczego. Będzie to potężny post, po którym twój serwer będzie tak lekki jak piórko!

I na tym pożegnam się z tobą. Dzisiaj mam wszystko, życzę wszystkim sukcesów, a pamiętam, że optymalizacja bazy danych to ogromne zmniejszenie obciążenia zasobu. Żegnajcie wszyscy i do zobaczenia wkrótce.

I wreszcie część żartów:

Jak piszesz? Jestem pewien, że będziesz zadowolony po przeczytaniu go i zaleceń dotyczących Twojego zasobu! Czekam na twoje komentarze!

Pozdrawiam Nikolay Korotkov

Po co to wszystko?
Na co to wpływa?
Jak przełożyć się na rzeczywistość?
A ponieważ zetknąłem się z tym problemem po raz pierwszy, czy możesz sobie wyobrazić, jak byłem zdezorientowany?
Co nafig VPS?
Piszę w liście zwrotnym do mojego hostera, prosząc mnie o wyjaśnienie, z jakim przerażeniem mój dach przechodzi przez dach?
Musiałem to zważyć, aby zoptymalizować 26 Mb - to jest HORROR, ale co teraz?
Wyobraź sobie, ile śmieci zawierała w sobie?
Czy możesz sobie wyobrazić, jaki ładunek utworzyła na serwerze?
Czym jest kontrola postów?