articles:informatique:nettoyage_de_la_base_de_donnee_de_pleroma
Ceci est une ancienne révision du document !
Table des matières
Suppressions des activités distantes anciennes
-- Création d'une table temporaire contenant toutes les activités locales CREATE TABLE activities2 AS SELECT * FROM activities WHERE LOCAL = TRUE; -- Insertion des activités en lien avec l'instance locale (ici 'pleroma.antoineve.me') INSERT INTO activities2 SELECT * FROM activities WHERE data->>'object' LIKE '%pleroma.antoineve.me%'; -- Insertion des activités de moins de 90 jours INSERT INTO activities2 SELECT * FROM activities WHERE updated_at > (CURRENT_DATE - INTERVAL '90 days'); -- Suppression des doublons DELETE FROM activities2 WHERE id IN (SELECT id FROM activities2 GROUP BY id HAVING COUNT(*) > 1); -- Vidange de la table des activités DELETE FROM activities; -- Insertion des activités conservées INSERT INTO activities SELECT * FROM activities2; -- Suppression de la table temporaire DROP TABLE activities2;
Suppresions des objects devenus inutiles
Suppressions de utilisateurs dont on n'entend plus parler
Cette requête va supprimer les utilisateurs distants qui n'ont pas commnuniqué avec l'instance depuis un certain temps (ici, 90 jours) :
DELETE FROM users WHERE last_refreshed_at < (CURRENT_DATE - INTERVAL '90 days') AND LOCAL = FALSE;
articles/informatique/nettoyage_de_la_base_de_donnee_de_pleroma.1587819492.txt · Dernière modification : 25/04/2020 12:58 de antoineve