Skip to main content Help Control Panel

Login   A+   A-

Community «   Le forum «   Besoin d'aide «  

Table sql "versions" [Solved]

astuce pour une purge en urgence
Immediate solution has been provided

Solution Manager: Bernard

Issue description

Bonjour,

je suis preneur de toute astuce pour purger certaines tables générées par yacs, un peu gourmandes, notamment "versions" qui fait 12mo chez moi et que rien ne purge. J'ai évoqué ce problème dans les nouvelles fonctions, tout en questionnant sur la fonction de cette table, sans réponse à cette dernière par la dev team.

Le problème étant que cette table prend tant de place (pour peut-être si peu d'utilité) que je commence à me tâter pour fermer un yacs sur ovh, vu l'urgence que la taille de la base de donnée fait enfler.

Merci d'avance

Comments

Lasares
avatar
from L'Île-Bizard à Montréal, Québec
697 posts

on May 30


Ce n'est pas du Yacs et ça oblige à un traitement manuel, mais peut-être qu'un de ces 2 logiciels (Windows seulement) pourrait t'être utile pour aider à gérer ta base de données ?

Data Roamer (39$ après 30 jours) : www.dataroamer.com

HeidiSQL (gratuit et open-source) : www.heidisql.com


On a si peu d'idée de ce qui est possible...
Christian
avatar
from Chonas l'Amballan
Associate, 773 posts

on May 30


Il y a aussi mysqlCC

Ce que je te suggère c'est :
  • sauvegarder ta table versions
  • vider la table
  • tester la création / mise à jour des articles/sections


Pour être moins radical, car je ne sais pas jusqu'ou tu veux purger, c'est de faire la purge par article en considérant que ces articles n'évoluent plus (delete versions where anchor = 'article:99' )
Moi-meme
avatar
from Entre chaise et clavier...
1387 posts

on May 30


Merci tout deux. De toutes façons je n'envisageais pas une autre solution que manuelle, YACs ne permet pas suffisamment de gérer certaines tables en purge.

Je pense que je vais vider la table "versions". Je voudrais juste m'assurer qu'à part des enregistrements en arrière plan, ça ne va rien gêner d'autre pour le fonctionnement de mon yacs. Cette table est-elle bien - et uniquement - dédiée à l'enregistrement des versions précédentes des articles et sections (un historique en somme) ?

-----
yacs-team.png
Plugin Firefox de recherche dans Yetanoz
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations

Moi-meme
avatar
from Entre chaise et clavier...
1387 posts

on June 5


Bonjour,

c'est un yacsien heureux et soulagé qui vous confirme que la démarche semble être efficace, puisque je viens de récupérer ces foutus 12Mo (sur une base qui en tolère 20 à peine...) en vidant effectivement cette table.

De plus, la modification d'une section enregistre bien une nouvelle donnée du côté de SQL alors que la table se trouve vidée. Ce qui confirme que ça n'altère pas YACs au-delà du champ d'application prévu de cette opération, et que tout repart comme si de rien n'était.

Je suis quand même étonné d'être le seul à avoir été inquiété par la croissance exponentielle de cette table, en l'absence de purge prévue par le contrôle yacs, tandis que la taille de cette table était chez moi 6 fois plus grosse que n'importe quelle autre a priori gourmande aussi (users, categories, articles, comments...), et alors que d'autres yacsiens doivent eux aussi avoir énormément de modification enregistrées ............... : :

En tout cas, ne sachant pas si c'est un bug de yacs, si c'est volontaire, ou si c'est un bug d'altération de mon yacs, je vais en faire une fiche de doc illico.

-----
yacs-team.png
Plugin Firefox de recherche dans Yetanoz
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations

ThierryP
avatar
from Nice, Drap
Associate, 1208 posts

on June 7


Ca pourrait être une nouvelle fonction intéressante non ?

Soit une purge générale "vider les historiques sauvegardés des articles" soit une purge par article "vider l'historique"

Ou même les deux...

En tout cas c'est une bonne idée.


Un annuaire propulsé par YACS - Skins pour Yacs : YordPress 5.3 - Bonbon Skin 1.2 - Totem 930
Moi-meme
avatar
from Entre chaise et clavier...
1387 posts

on June 7


Maintenance de certaines tables ; C'est parce que la dev team ne répondait à rien que j'ai ouvert ce fil de demande d'aide en parallèle.

-----
yacs-team.png
Plugin Firefox de recherche dans Yetanoz
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations

Neige1963
from Sherbrooke, Québec, Canada
151 posts

on Aug. 1


Pour être moins radical, car je ne sais pas jusqu'ou tu veux purger, c'est de faire la purge par article en considérant que ces articles n'évoluent plus (delete versions where anchor = 'article:99' )

 

Excusez moi, mais ce moyen de purger la base, pour les articles qui n'évoluent plus, j'aimerais bien l'appliquer mais, comment fait-on?Embarassed

Bernard
avatar
from nearby-an-airport
Associate, 6696 posts

on Aug. 2


La purge de n'importe quelle table peut s'effectuer à travers le formulaire de sauvegarde/restauration, à condition de prendre quelques précautions pour respecter la syntaxe MySQL.

Dans le cas de la table des versions, la purge n'est pas trop risquée, puisqu'elle concerne seulement des versions précédentes des pages.

Lorsqu'une page est éditée, YACS stocke le contenu intégral de l'ancienne page dans la table des versions, puis met à jour la nouvelle page dans la table des articles.

Si une page est modifiée plusieurs fois dans une même journée, seule la dernière version du jour est conservée.

Pour des pages de taille importante, même à raison d'une version par jour, la table peut grossir vite s'il y a de nombreuses modifications (type wiki).

En cas d'urgence, il est possible de vider la table versions comme suit :

-  depuis le panneau de contrôle, activer la sauvegarde/restauration

-  dans le champ de saisie manuelle, taper et exécuter la commande suivante

DELETE FROM yacs_versions

-  vérifier dans le panneau de contrôle que le nombre de versions est passé à 0

Pour être un peu moins drastique, vous pouvez supprimer les versions agées, en indiquant une date limite comme par exemple dans la commande suivante

DELETE FROM yacs_versions WHERE edit_date < '2007-12-31'

qui supprimera toutes les versions enregistrées avant le 31 décembre 2007.
Neige1963
from Sherbrooke, Québec, Canada
151 posts

on Aug. 4


Bonjour Bernard

Merci de cette précision, j'ai suivi vos instructions pour l'effacement des données dans versions et évidement, ça a fonctionné !

Merci ces précisions sont très utile

mais je me demandais...

serait il possible de savoir quel est le but de certaines tables? j'ai pas trouvé par exemple à quoi sert et par où passer pour enregistrer des données dans :

Emplacements

Notifications

messages

visites

compteurs

profils  --de qui?

membres de ...

valeurs

Tags: purge sql versions table

Rate this page
Posted by Moi-meme on May 29, commented by Neige1963 on Aug. 4, (popular)