Yıllarca eklenti kullanımı sonrası WordPress veritabanını temizleme
Sahipsiz tablolar, aşırı büyümüş autoload seçenekler, birikmiş revizyonlar: eskiyen bir veritabanı gerçekte ne içerir ve hâlâ kullanılan bir eklentiyi bozmadan nasıl temizlenir.
Yıllarca kullanım sonrası bir veritabanı gerçekte neyi barındırır
Birçok eklentinin kurulup sonra kaldırıldığı, yıllardır kullanılan bir WordPress sitesi, veritabanında kimsenin hiç temizlemediği unsurlar biriktirir. İyi tasarlanmış eklentiler kaldırılırken kendi tablolarını siler; birçoğu bunu yapmaz ve artık hiçbir aktif kodun okumadığı sahipsiz tablolar geride kalır. wp_posts tablosu da içerik revizyonlarını biriktirir: bir yazının her otomatik kaydı veya manuel kaydı, varsayılan olarak hiç temizlenmeyen yeni bir satır oluşturur. wp_options içinde saklanan geçici bir önbellekleme mekanizması olan transient'lar mantıken süresi dolduğunda geçersiz hâle gelir, ancak hiçbir şey onları temizlemezse süreleri dolduktan çok sonra bile veritabanında kalmaya devam eder.
Sahipsiz meta veriler de aynı mantığı izler: bir yazı, ürün ya da müşteri silindiğinde, wp_postmeta veya wp_usermeta içindeki karşılık gelen satırlar, özellikle silme işlemi WordPress arayüzü yerine doğrudan bir veritabanı sorgusuyla yapıldıysa, her zaman aynı anda silinmez. Bu sahipsiz satırlar hiçbir yerde görünmez, ama veritabanını gereksiz yere şişirmeye devam eder.
Performans açısından en maliyetli nokta genellikle en az görünen olanıdır: wp_options içinde autoload olarak işaretlenmiş seçenekler. Bunlar, o sayfanın gerçekte ihtiyacı olup olmadığına bakılmaksızın, WordPress'in her sayfa yüklemesinde belleğe tamamen yüklediği ayarlardır. Eski bir sitede bu tablo birkaç megabayta ulaşan autoload seçenekleri içerebilir; bunların hiçbirine ihtiyaç duymayan sade bir ürün sayfasında bile her istekte yüklenir.
Eskiyen bir WordPress veritabanını nasıl temizliyorum
-
Tam veritabanı yedeği
Herhangi bir silme işleminden önce, site dosyalarından bağımsız olarak geri yüklenebilir tam bir veritabanı yedeği.
-
Sahipsiz tabloları belirleme
Veritabanındaki tam tablo listesini, sitede gerçekten aktif olan eklentilerin ön ekleriyle karşılaştırırım. Ön eki kurulu hiçbir eklentiyle (aktif ya da değil) eşleşmeyen bir tablo, kaldırma adayıdır.
-
Revizyonları ve süresi dolmuş transient'ları temizleme
Yazı başına makul bir sayının ötesindeki içerik revizyonlarını ve son kullanma tarihi geçmiş transient'ları silerim.
-
Autoload seçeneklerini öncesi ve sonrasında ölçme
Müdahale öncesi autoload olarak işaretlenmiş seçeneklerin toplam boyutunu kaydeder, ardından temizlik sonrası azalmayı kontrol ederim. Bu, temizliğin performans üzerindeki gerçek etkisinin en doğrudan göstergesidir.
-
İşlevsel kontrol
Özellikle kendi önbelleği için transient kullanan eklentiler başta olmak üzere, her aktif eklentinin temizlik sonrası normal çalıştığını kontrol ederim.
İlgili sayfalar
-
Yavaş WordPress sitesi
Bir WordPress sitesinde veya WooCommerce mağazasında yavaşlığın en sık görülen nedenleri, veritabanı dahil.
-
Müdahale öncesi mağazayı yedekleme
Geri alınabilir kalması için bir veritabanı işleminden önce bir yedeğin neyi kapsaması gerektiği.
-
WordPress önbelleğini temizleme
Sayfa önbelleği, nesne önbelleği ve transient'lar arasındaki fark, ve hiçbir şeyi bozmadan bunlar nasıl temizlenir.
-
Sözlük: geçiş
Bu sayfalarda kullanılan teknik terimler, basitçe açıklanmış.
İhtiyacınızı bir dakikada anlatın
Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.