Vanhojen transientien poistaminen

WordPressin transientit ovat välimuistityyppistä tietoa, jota WordPress tallentaa tietokanteen mikäli Redis object cache tai vastaavaa ei ole käytössä. Transientit kannattaa poistaa siirron yhteydessä, koska usein halutaan että välimuistit rakentuvat uudella palvelimella uudestaan.

Tietokantadumppitiedostosta ne voi poistaa sedillä näin:

sed -r '/INSERT INTO `wp_options` VALUES \([0-9]+,'\''_transient_/d' -i dump.sql

sed -r '/INSERT INTO `wp_options` VALUES \([0-9]+,'\''_site_transient_/d' -i dump.sql

Ajossa olevasta tietokannasta ne voi poistaa näin:

$ mysql

MariaDB > DELETE FROM wp_options WHERE option_name LIKE ('_transient_%');
Query OK, 69 rows affected (0.01 sec)

MariaDB > DELETE FROM wp_options WHERE option_name LIKE ('_site_transient_%');
Query OK, 29 rows affected (0.01 sec)

Emme suosittele komentoa wp transient delete-all siirtotilanteessa. Suora tietokantakomento kohdistuu aina varmasti tietokantaan vaikka object cache olisi käytössä ja toimii vaikka WordPress-asennus olisi rikki/kesken, kun wp-cli ei voi käynnistyä.

Siirtotavasta riippuen siirretyllä sivustolla ei ole object-cache.php.off-tiedostoa joka mainitaan Redis object cache -ohjeessa. Sellaisessa tilanteessa asennuksen voi tehdä komennoilla:

cd /data/wordpress/htdocs/wp-content

curl -O https://raw.githubusercontent.com/Seravo/wordpress/master/htdocs/wp-content/object-cache.php

Ratkaisiko tämä ongelman?