wp_options’daki gereksiz transient kayıtları temizleme

Kötü programcılar yada başka sebeplerle wordpress’in databaseinin temel tablolarından biri olan wp_options bir süre sonra şişiyor. Terabaytlar seviyesinde trafik alan içerik sayısının yüzbinlerle ölçüldüğü bir sitede bile bu tablo doğru ayarlandıktan sonra 6mb.
Eğer sıradan bir siteniz varsa bu tablo 2-3 mb’den büyükse kesinlikle temizlik ihtiyacı mevcut demektir.

1- Delikanlı programcı yapacağı işlemlerden önce yedek almaz.

2- Phmyadmin yada benzeri bir araç ile ilgili databasei açar. Eğer database isminde özel bir değişiklik yapılmadı ise yani tablolar wp_* şeklinde ise alttaki komutu SQL katına geçip uygular.

DELETE FROM `wp_options` WHERE `option_name` LIKE ('%\_transient\_%');

Bu işlemin ardından hazır eli değmişken database’in tamamını optimize etmekten de zarar gelmez.

imza az önce wp_options için 450bin satır civarı gereksiz veri (transient) silmiş bu sayede databasede 671 mb küçülme sağlamış biri.

yazıya ek

Eğer sisteme SSH erişiminiz varsa ssh üzerinden kullanabileceğiniz wp-cli adlı bir araç var. Bu kurulu ise bu işlemi çok daha kolay halledebilirsiniz.

wp transient delete --expired ile sadece expire olmuş olanlar silinir.
Ama bizim derdimiz zaten kötü kodlama sebebi ile datanın expire olmuyor oluşu idi.
wp transient delete --all diyerek topunu silebiliriz gerekli transientleri sistem yeniden oluşturacaktır.
Bu komutu da crona bağlayıp haftada bir sistemin en rahat olduğu bir gece yarısı çalıştırırsanız yaşasın tembellik.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir