WordPress-tietokannan optimointi ja siivous

Oletko törmännyt suorituskyvyn kanssa haasteisiin WordPressin kanssa? Muistatko, koska olet viimeksi puhdistanut tai optimoinut tietokannan? Etkö koskaan? Hups! Nyt on hyvä aika! Ja tämä optimointitoimenpide ei vaadi edes montaa minuuttia.

Tietokannan optimointi on yksi osa WordPressin nopeusoptimointia. Muita hyviä ideoita ovat mm. kuvien optimointi, maksuttoman CDN-palvelun käyttöönotto, sekä asentaa nopea välimuisti käyttöön sivustolle.

Tietokannan siivous ja optimointi kannattaa: sivustosi tietokanta voi olla täynnä kaikenlaisia tietoja ja tauluja, joita et enää tarvitse. Vuosien aikana WordPress-sivustojen tietokantaan voi kertyä kaikkea muutakin tarpeetonta, joka hidastaa sekä backend- eli ylläpidon näkökulmasta hallintapuolella toimintaa, mutta myös frontend-puolta eli julkista sivustoa joka näkyy sivustovierailijalle.

Aloita ottamalla varmuuskopio tietokannasta

Mitä tahansa teetkin, ota aina varmuuskopio tietokannasta ennen kuin aloitat. Voit tehdä sen cPanel-hallintatyökalusta (verkkotunnuksesi.fi/cpanel/) tai esimerkiksi varmuuskopiointi-lisäosan avulla.

Helppo yhden klikkauksen varmuuskopio tietokannasta onnistuu cPanel-hallintatyökalussa ”Tiedostot” otsikon alta löytyvän ”Varmuuskopio” työkalun avulla.

Klikkaa vasemmalla näkyvää tietokannan nimeä ja se latautuu koneellesi. Mikäli törmäät ongelmaan tietokannan optimoinnin kanssa, voit palauttaa sen oikealla näkyvän ”Palauta MySQL-tietokannan varmuuskopio” toiminnan kautta lataamalla tiedoston takaisin webhotellin palvelimelle.

Voit myös ottaa varmuuskopion esim. UpdraftPlus-varmuuskopionnin lisäosalla.

Varmuuskopiot otettu? Hienoa, aloitetaan tietokannan optimointi!

WordPressille ilmaiseksi saatavilla oleva LiteSpeed Cache -lisäosa on helppo työkalu tietokannan puhdistamiseen ja optimointiin. LiteSpeed Cache on muutakin kuin tietokannan optimointiin työkalu. Se on välimuistilisäosa, joka ottaa kaiken irti LiteSpeed-palvelimen suorituskyvystä. Se auttaa nopeuttamaan sivustoasi monella tavalla. Se osaa mm. optimoida sivuston CSS- ja JS-tiedostot, parantaa sivujen latausaikoja optimoimalla kuvat ja kuvien lataukseen liittyvät LazyLoad-asetukset, mahdollistaen CDN-sisällönjakeluverkoston ym.

Tässä kirjoituksessa kerromme erityisesti siitä, miten käytät lisäosaa optimoimaan tietokantasi suorituskyvyn. Jos et ole vielä asentanut LiteSpeed Cachea ja haluat oppia miten välimuistin eri asetukset nopeuttavat WordPress-sivustoasi, lue ohjeemme LiteSpeed Cache -välimuistin käyttöönottoon.

Aloita asentamalla LiteSpeed Cache. Suuntaa vasemmalla ”Lisäosat” otsikon alla ”Lisää uusi lisäosa” sivulle. Kirjoita hakukenttään (oikealla ylhäällä) ”litespeed cache”. Klikkaa LiteSpeed Cache -lisäosan kohdalta ”Asenna nyt”. Hetken päästä lisäosa on asennettu ja nappi muuttuu siniseksi, jossa lukee ”Ota käyttöön”. Klikkaa sitä ja LiteSpeed Cache on sen jälkeen aktivoitu sivustollesi.

Asennuksen jälkeen suuntaa vasemmalta valikosta löytyvän ”LiteSpeed Cache” alta löytyvälle ”Database” -sivulle. Tietokanta (engl. database) optimointiin LiteSpeed Cache tarjoaa useita eri vaihtoehtoja:

  • Clean All: suorittaa kaikki muut puhdistustoimenpiteet, paitsi ”Optimize Tables” toiminnon.
  • Post Revisions: poistaa kaikki vanhat tallennetut versiot artikkeleista ja sivuista. Huom! Menetät tämän avulla mahdollisuuden palata sivun tai artikkelin edelliseen versioon. Normaalisti WordPress tallentaa versiohistoriaa muutoksista, jotka kuormittavat ja täyttävät tietokantaa.
  • Orphaned Post Meta: poistaa vanhat metadatat aiemmin poistetuista artikkeleista.
  • Auto Drafts: kun muokkaat artikkeleita, WordPress tallentaa silloin tällöin luonnosversion (draft) varmuuskopioksi, jos internet-yhteytesi katkeaa ja sivu katoaa ns. bittiavaruuteen.
  • Trashed Posts: poistaa kaikki artikkelit jotka on siirretty roskakoriin.
  • Trackbacks/Pingbacks: oletuksena WordPressissä on päällä artikkeleissa ominaisuus, joista saat tiedon, kun joku toinen sivusto tai blogi on lisännyt linkin artikkeliisi. Tätä ominaisuutta käytetään valtavasti nykyään roskapostittamiseen. Jos olet tietoinen tehdyistä linkityksistä, voit turvallisesti poistaa nämä.
  • Expired Transients: väliaikaisesti tallennettuja tietueita, jotka ovat vanhentuneet, mm. ulkoisten API-pyyntöjen takia.
  • All Transients: sama kuin yllä, mutta sisältää paitsi vanhentuneet, myös käytössä olevat tietueet.
  • Optimize Tables: optimoi tietokannan taulukot. Jos klikkasit ”Clean All”, muista painaa myös tätä, sillä ”Clean All” toiminto ei optimoi tietokannan tauluja.

Yllä olevien toimenpiteiden jälkeen vihreä ”oikein”-ikoni ilmestyy niihin toimenpiteisiin, jotka ovat onnistuneesti suoritettu. Joissakin voi olla optimoinnin jälkeen edelleen punainen ”ruksi”-ikoni senkin jälkeen, mikä tarkoittaa ettei kaikkia ole voitu puhdistaa tai optimoida. Tämä on aivan normaalia: jokin lisäosa tai toiminto WordPressissä voi käyttää ko. toimintoa juuri sillä hetkellä ja sen takia optimointi ei onnistu.

Jos näet sivulla ”Database Table Engine Converter” otsikon alla joitakin tauluja (table), joiden kohdalla on mahdollisuus painaa ”Convert to InnoDB” linkkiä, kannattaa uusi InnoDB-formaatti ottaa käyttöön.

Vanha MyISAM-formaatti on hitaampi kuin uusi InnoDB ja sen takia muuntaminen on suositeltavaa. Joudut klikkaamaan jokaisen taulun kohdalta ”Convert to InnoDB” nappia erikseen.

Kuva: Mikäli vanhaa MyISAM-formaattia ei ole käytössä tauluissa, lukee tällä sivulla ilmoitus, että kaikki on kunnossa (We are good. No table uses MyISAM engine).

Optio: Klikkaa ”DB Optimization Settings” välilehti auki. Voit halutessasi määritellä esiasetukset, esim. kuinka monta tallennettua vanhaa versiota esim. artikkeleista tai sivuista säästetään, kun työkalu poistaa ja puhdistaa tietokantaa. Mikäli määrittelet ”Revisions Max Number” kenttään luvun 10 ja ”Revisions Max Age” kenttään 30, tällöin vanhoja versioita säilytetään maksimissaan 10 kpl ja/tai 30 päivän ajan. Tämän jälkeen jatkossa kun teet tietokannan optimoinnin, työkalu ei automaattisesti poista 10 kpl tai 30 päivän sisällä tehtyjä versioita. Oletuksena näissä arvo on nolla (0), eikä muutos ole tarpeen ellet halua erikseen säilyttää joitakin viimeisimpiä versioita.

Ennaltaehkäise roskasisällön kertymistä tietokantaan

Kuten yllä huomaat, tietokantaan kertyy kaikenlaista mielenkiintoista ja usein myös turhaa tietuetta ja taulua ajan myötä.

Voit ennaltaehkäistä WordPressin omien asetuksien avulla roskasisällön kertymistä tietokantaan. Esimerkiksi jos artikkeleihisi on mahdollista kommentoida, voi olla, että saat myös paljon roskaposti- eli spämmisisältöä kommenttiosioon. Pahimmillaan roskaposteja voi tulla useampi tuhat vuodessa. Roskaviestit näyttävät sähköpostissa tältä:

Roskaviestien ehkäisyn voi toteuttaa muutamalla tavalla. Mikäli et halua kommenttiosiota ollenkaan käyttöön, voit estää sen WordPressin asetuksissa sekä kytkeä jokaisesta artikkelista pois päältä.

Mikäli haluat kytkeä kommentit pois päältä, suuntaa ”Asetukset” alta löytyvälle ”Keskustelu” -sivulle.

Jätä ruksittamatta kaikki ”Artikkelin oletusasetukset” kohdasta jolloin kommentointimahdollisuus sekä pingback & trackback linkki-ilmoitus poistuu uusiin artikkeleihin. Huom! Tämä koskee vain uusia artikkeleita. Vanhojen julkaistujen artikkeleiden suhteen joudut jokaisesta vanhasta artikkelista poistamaan kommentoinnin ja linkki-ilmoitukset erikseen pois päältä.

Haluatko pitää kommentit päällä? Ota avuksi roskapostisuodatus

Haluatko sittenkin pitää kommentoinnin päällä bloggauksiisi/artikkeleihisi, jos se on oleellisesti tärkeä osa sivustoasi tai verkkokauppaasi? Silloin kannattaa ottaa käyttöön roskapostisuodatus. Roskapostisuodatuksen avulla suodatetaan ja/tai poistetaan automaattisesti roskapostit. Yksi ilmainen vaihtoehto on Antispam Bee -lisäosa. Toinen vaihtoehto on Akismet joka on henkilökohtaiseen käyttöön maksuton, mutta yrityksille se on maksullinen.

Jos lisäosa ei automaattisesti poista roskaposteja vaan siirtää ne ”roskaviesti” kansioon, muista kuitenkin käydä tyhjentämässä roskaviestit-kansio sillon tällöin.

Yhteenveto tietokannan optimoinnista

Tietokannan optimointi kannattaa tehdä esim. muutaman kerran vuodessa. Näin varmistat, ettei tietokantaan tule turhaa sisältöä, joka hidastaisi suotta sivustoasi. Tietokannan optimointi on erityisen hyödyllistä isoille sivustoille, joissa on paljon erilaista dataa tietokannassa. Tällaisia ovat sivustot joilla on runsaasti bloggauksia, kategorioita sekä avainsanoja sekä WooCommerce-verkkokaupat, joissa tuotedatan ja tilausten myötä tietokanta täyttyy nopeasti.

Jokainen lisäosa käyttää myös tietokantaa. Yksi hyvä idea on tarkistaa Lisäosat -sivulta, löytyykö sivustolta jotain turhia lisäosia, jotka voisi ottaa pois käytöstä. Tämä saattaa olla myös tietoturvan näkökulmasta fiksua: vaikka lisäosa ei olisi käytössä, on se silti palvelimellasi mahdollistamassa erilaisia tietoturvariskejä.

Muista testata sivustosi toiminta tietokannan siivouksen ja optimoinnin jälkeen, jotta varmistut, ettei mikään mennyt rikki. Jos törmäsit ongelmaan, voit aina palauttaa tietokannan varmuuskopiosta ja yrittää uudelleen tutkien, mikä aiheutti ongelman ensimmäisellä kerralla.

PS. Tiesitkö, että tietokannan toimintaa voit nopeuttaa Redis-ratkaisussa Docker-palvelussamme? Siirtämällä tietokannan toiminnan Redis-säiliöön, mahdollistat palvelimen RAM-muistiin perustuvan huippunopean ratkaisun. Esimerkiksi suuret verkkokaupat ja sivustot hyötyvät suuresti Redis-ratkaisun tarjoamasta matalan viiveen tarjoamasta nopeudesta.

Nauti nopeammin toimivasta sivustostasi!

Jaa kirjoitus: