Outils pour utilisateurs

Outils du site


articles:informatique:nettoyage_de_la_base_de_donnee_de_pleroma

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
articles:informatique:nettoyage_de_la_base_de_donnee_de_pleroma [25/04/2020 21:33] – [Suppressions de utilisateurs] antoinevearticles:informatique:nettoyage_de_la_base_de_donnee_de_pleroma [25/04/2020 22:04] (Version actuelle) – [En tenant compte des personnes suivies] antoineve
Ligne 21: Ligne 21:
  
 ===== En tenant compte des personnes suivies ===== ===== En tenant compte des personnes suivies =====
 +Seul la première partie de la commande change :
 <code sql> <code sql>
-?+-- Il est important de d'abord traiter la table activities 
 +-- puisqu'ensuite on supprime les objets qui n'ont plus 
 +-- de lien avec cette table. 
 +-- 
 +-- 1ère partie pour la table activities 
 +-- 
 +DELETE FROM activities 
 +WHERE local = false  
 +AND updated_at < (CURRENT_DATE - INTERVAL '90 days') -- Ici 90 jours, à ajuster si besoin 
 +AND data->>'actor'  
 +NOT IN ( 
 +SELECT ap_id FROM users WHERE id IN ( 
 +SELECT following_id FROM following_relationships WHERE follower_id IN ( 
 +SELECT id FROM users WHERE ap_id LIKE '%pleroma.antoineve.me%' -- Personnaliser le nom de l'instance ! 
 +AND nickname IS NOT NULL AND nickname NOT LIKE '%fetch%'))); 
 +-- 
 +-- 2ème partie pour la table objects 
 +-- 
 +DELETE FROM objects  
 +WHERE id NOT IN (SELECT CAST(data->>'context_id' AS BIGINT) FROM activities) 
 +AND data->>'actor' NOT LIKE '%pleroma.antoineve.me%' -- Personnaliser le nom de l'instance ! 
 +AND updated_at < (CURRENT_DATE - INTERVAL '90 days'); -- Ici 90 jours, à ajuster si besoin
 </code> </code>
  
articles/informatique/nettoyage_de_la_base_de_donnee_de_pleroma.1587850409.txt · Dernière modification : 25/04/2020 21:33 de antoineve