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.