Jak u WordPressu vyčistit databázi a zrychlit běh webu

čistění

WordPress ukládá velké množství dat do databáze. Mnoho z nich je nadbytečných a mohou být smazána. Pokud již nějakou dobu máte webové stránky běžící na redakčním systému WordPress, je zde velká šance, že byste si měli vyčistit databázi. Pravidelnou údržbou databáze snížíte její velikost a zrychlíte běh webu. V tomto článku si ukážeme jak vyčistit WordPress databázi od redundantních dat.

Mezi typická data, která v databázi obvykle jen zabírají místo patří:

  • revize,
  • spamové komentáře,
  • smazané komentáře,
  • data z pluginů, které se již nepoužívají.

Odstraněním všech těchto nepotřebných dat snížíte velikost databáze, zrychlíte tvorbu záloh webu a samozřejmě také zvýšíte výkon webu.

Před tím než začnete

Před tím, než se do toho pustíte důrazně doporučuji udělat kompletní zálohu webu. Změny, které v databázi budeme provádět jsou nevratné.

Čistění WordPress databáze s pluginem WP-Sweep

První věcí, co musíte udělat je nainstalovat plugin WP-Sweep. Plugin se nachází v oficiálním repozitáři a můžete ho nainstalovat přímo přes administrační rozhraní vašeho WordPressu.

Po aktivaci pluginu pokračujte běžte do jeho nastavení v Nástroje -> Sweep.

Dostanete se na stránku plnou statistik vaší databáze. Výpis informací obsahuje především počet a procentuální zastoupení dat, které je možné smazat.

Výpis je rozdělen do šesti sekcí podle typů dat:

  • Post (Příspěvky)
  • Comment (Komentáře)
  • User (Uživatelé)
  • Term (Nepotřebné výrazy a vztahy)
  • Option (Dočasné natavení)
  • Database (Databáze)

V každé sekci je poté možné detailně vidět výpis dalších položek.

WP-Sweep před optimalizací

WP-Sweep před optimalizací

Čištění databáze můžete provádět postupně jen u položek, které chcete odstranit. To uděláte tak, že kliknete na tlačítko Sweep u dané položky. Nebo můžete provést kompletní vyčistěním databáze tak, že kliknete na tlačítko Sweep All, které se nachází na konci stránky.

Čistění databáze může nějakou tu minutu trvat. Čas se odvíjí od velikosti databáze. Pokud vám přijde, že to trvá moc dlouho, můžete stránku znovu načíst a ihned vidíte kolik toho WP Sweep zatím odstranil.

Proč právě WP Sweep a ne populárnější WP-optimize?

Pokud vás napadla právě taková otázka, pak důvodem je, že za WP Sweep stojí skvělý developer Lester Chan, jehož pluginy jsou vysoce hodnoceny.

Druhou výhodou pluginu WP Sweep je to, že při úpravě a promazávání databáze používá správné WordPress funkce a snaží se vyhnout přímým MySQL dotazům. WP-optimize dělá přesný opak a používá SQL dotazy, což může zapříčinit nedokonalé čistění databáze a zanechání zbytkových dat.

Co vše WP Sweep čistí?

  • Revize
  • Automatické koncepty
  • Smazané komentáře
  • Neschválené komentáře
  • Spamové komentáře
  • Nepotřebné meta u příspěvků
  • Nepotřebné meta u komentářů
  • Nepotřebné meta uživatelů
  • Nepotřebné vztahy
  • Nepotřebné výrazy
  • Duplicitní meta  u příspěvků
  • Duplicitní meta u komentářů
  • Duplicitní meta uživatelů
  • Dočasné nastavení
  • Optimalizuje tabulky v databázi
  • oEmbed cache v post meta

Příklad použíti pluginu na webu WPlama.cz

Plugin WP-Sweeps jsem otestoval i na našem webu, který je necelý rok starý. Z původní velikosti databáze 38 MB se její velikost zmenšila na 8 MB. Bylo tedy odstraněno 30 MB nadbytečných dat. Velikost databáze se zmenšila o 79%.

O autorovi

Tomáš Cirkl

WordPress specialista · 12 let praxe · 300+ webů ve správě

Baví mě Internet a zvláště pak redakční systém WordPress. Jsem pravidelným účastníkem a přednášejícím na WordCamp Praha a WordPress konferencích.

16 Komentáře

  1. Beowulf

    Moc děkuji za Váši radu. Na několika webech mi nabobtnala DTB a přemýšlel jsem jak velikost snížit bez hlubších znalostí DTB. Vůbec mě nenapadlo, že existují takové praktické pluginy jako WP-Sweeps. Dík

    Odpovědět
  2. jimmy

    Konečne poriadna stránka o WP chalani ďakujem!!! Pokračujte ste super

    Odpovědět
    • Tomáš Cirkl

      Díky! Jsme rádi, že se návody hodí.

      Odpovědět
  3. Miska

    Ja som si wordpress zavirila obyčajnou inštalaciou pluginov z oficiálneho wordpress webu a teraz neviem ako sa toho zbaviť nič mi nefunguje nejde mi prihlasiť do adminu a ked sa tam aj nahodou po sto pokusov minimálne prihlásim tak sa mi tam nič nedá robiť ono ma to nechce evidovať ako že som admin a nič nejde robiť. Vôbec netušim čo s tým ani nainštalovať/odinštalovať pluginy nefunguje.

    Odpovědět
  4. David

    Díky za skvělou radu! Vytrhli jste mi obrovský trn z paty 🙂

    Odpovědět
  5. pikis

    Ahoj Tomas, Dik za skvely tip. Paradny plugin, velka pomoc pre znizovanie objemu v DB. Za 3 dni mi spamery nasypu 40.000 komentarov 🙁 Akismet ich sice presunie do kosa ale navysuje to databazu niekedy az cez 100 MB a potom nastava problem pri zalohe. Pluginom riesim dosledok nie vsak pricinu. Prosim ta vies mi poradit co s tym ? Vopred velka vdaka.

    Odpovědět
    • Tomáš Cirkl

      Zkusil bych se podívat na IP spamu a pokud to půjde, banovat.

      Odpovědět
  6. pikis

    Tato moznost ma napadla len asi bude dost IP adries. Ale asi nemam inu moznost.Trochu sa trapim zo syntaxom rozsahu IP adries v Ithemes Security. Ako prosim ta nastavim rozsah napr. od 91.200.12.100 az po 91.200.12.300 ? Diky.

    Odpovědět
  7. Valentino Hesse

    Super článek, díky.

    Odpovědět
  8. Vít H.

    Pozor na wp super cache, při zaškrtnutí Make known users anonymous so they’re served supercached static files. mně nechtěl pustit do administrace wp a neumožnil přihlášení uživatelů! Celkem mě to potrápilo!

    Odpovědět
  9. Milan Koktan

    Spustil jsem Sweep All a z webu mi zmizeli všechny vlaječky jazykových variant webu. Zůstala jen CZ. To se mi stalo už po druhé. Poprvé jsem měl web jen na předváděčku s pár články, ale musel jsem znova vytvářet v polylangu jazykové varianty (vlaječky tam prostě nešlo dodat). Např. zrušit španělštinu a nově jí přidat. Samozřejmě jsem pak musel vytvářet i nově články.
    Teď se z toho asi pos…. :o(
    Musím to nějak obnovit ze zálohy

    Odpovědět
    • Milan Koktan

      odpovím si sám: import >> db_******.sql a je po problému
      Kam nahlásit tento problém se SWEEPem?

      Odpovědět
      • Tomáš Cirkl

        Díky za upozornění, nejlépe napsat autorům pluginu přes wordpress.org na stránce pluginu.

        Odpovědět
  10. Ivan Boukal

    Moc děkuju za tento Váš článek a obzvlášť za část „Proč právě WP Sweep a ne populárnější WP-optimize?“ Vyzkoušel jsem na svých webech několik pluginů na optimalizaci databáze, vč. WP-Optimize, pročetl řadu článků, strávil tím vším fůru času s výsledky, které mě zdaleka neuspokojovaly. Dnes jsem, na zákl. tohoto článku, na právě dokončovaný web nasadil WP-Sweep a valil voči 😉 Databáze se smrskla z 34,73 MB na 6,56 MB! …… Tak tomu říkám OPTIMALIZACE 🙂 Díky Vám a díky Lester Chanovi!!!

    Odpovědět
  11. Petr

    Díky za tip. Dneska jsem to vyzkoušel na jednom svém webu cca 368 MB databáze. Po Sweepu, úplně stejně, respektive žádný vliv na velikost to nemělo 🙁 Po „optimalizaci“ „Sweep ALL“ to sice cosi promazalo, ale v podstatě, jak píšu, velikost zůstala v řádech MB naprosto stejná. Ještě to zkusím na jiných webech, tam mám DB kolem 930 MB. Velikost databází mám podezřele velkou, oproti zde píšícím… což je zvláštní, když na každém webu mám jen pár stránek, komentáře všude zakázané.

    Napadá někoho, čím by to mohlo být?

    Děkuji

    Odpovědět
    • Tomáš Cirkl

      To už je opravdu velká DB, nemáte tam hodně revizí? Případně koukněte přímo do DB, která tabulka je tak velká.

      Odpovědět

Odeslat Komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Pojďme se seznámit

30 minut video callu, podívám se na tvůj web a řeknu, co by se dalo zlepšit. Nic neslibuju, ale obvykle odcházíš se seznamem priorit.