Mysql'den anlayanlar için öğrenmek istediğim bir konu var, normalde aşağıdaki kod ile veritabanında myprefix_ ile başlayan tüm tabloları silebiliyorum.
SELECT CONCAT( 'DROP TABLE ', GROUP_CONCAT(table_name) , ';' )
AS statement FROM information_schema.tables
WHERE table_schema = 'database_name' AND table_name LIKE 'myprefix_%';bende 10.000+ alt sitesi bulunan bir sitem var. db çok büyüktü 20 gb üzerinde bunu optimize etmeye başladım. ilk olarak spam yorumlardan başladım sonra post tablosundaki inherit ve revisionları sildim sonra farkettim ki post tablosundaki tüm postlara ait meta verileri postmeta tablosunda post id si ile saklanıyor postları sildiğim için aşağıdaki kodu çalıştıramıyorum. DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision'bu kodu postmeta ve wp_term_relationships tablolarındaki post_id yi post tablosunda sorgulatıp, eğer yoksa sildirebilecek şekilde düzenleyebilirmiyim.
Yarımlarınız için teşekkür ederim.