J'ai 264 307 lignes "http" (post_type = http) dans ma table wp_posts. 99% de ceux qui les ont ont ce post_title:
GET http://Twitter.com/statuses/user_timeline/@xcentric.json?count=100
et "erreur" en tant que post_status.
Puis-je simplement les supprimer sans que cela n'affecte mon site? Ma table wp_posts est 5gb!
Merci
Voici une approche appareillage pour supprimer toutes ces lignes:
CREATE TABLE wp_posts_new LIKE wp_posts;
ALTER TABLE wp_posts_new DISABLE KEYS;
INSERT INTO wp_posts_new SELECT * FROM wp_posts
WHERE post_type'http'
AND post_title<>'GET http://Twitter.com/statuses/user_timeline/@xcentric.json?count=100';
ALTER TABLE wp_posts_new ENABLE KEYS;
ALTER TABLE wp_posts RENAME wp_posts_old;
ALTER TABLE wp_posts_new RENAME wp_posts;
Maintenant, commencez à utiliser votre site Web.
Lorsque vous êtes absolument certain que wp_posts
fonctionne correctement, vous pouvez alors supprimer l'ancien fichier:
DROP TABLE wp_posts_old;
ou vous pouvez le garder quelques jours et le laisser tomber plus tard.
Si vous voulez que l'ancienne table soit remise dans le bon sens, changez-la comme ceci:
ALTER TABLE wp_posts RENAME wp_posts_new;
ALTER TABLE wp_posts_old RENAME wp_posts;
Essaie !!!
POUR SUPPRIMER les posts http ayant Twitter dans le post_title
CREATE TABLE wp_posts_new LIKE wp_posts;
ALTER TABLE wp_posts_new DISABLE KEYS;
INSERT INTO wp_posts_new SELECT * FROM wp_posts
WHERE NOT (post_type='http' AND LOCATE('Twitter',post_title) > 0);
ALTER TABLE wp_posts_new ENABLE KEYS;
ALTER TABLE wp_posts RENAME wp_posts_old;
ALTER TABLE wp_posts_new RENAME wp_posts;
Existe-t-il un post_content
pour ces lignes? Vraisemblablement, ils ont été créés par un plugin Twitter, donc voyez s’il y en a un installé et s’il est réglé sur actif ou inactif. Si les données ne sont plus affichées ou utilisées sur le site/blog, vous devriez pouvoir simplement supprimer ces lignes car elles ne servent plus à rien.