Page 1 sur 1

Supprimer automatiquement lignes base mysql à partir d'une date donnée

Posté : 09 nov. 2015, 14:09
par bob56@
Bonjour :D

Alors voilà mon petit problème pour qui aura la solution, car moi je n'ai pas trouvé grrrrrrrrr

J'aimerai bien supprimer automatiquement les anciens fichiers logs vieux de plus de 12 mois.

avec le script suivant pas de problème sinon qu'il me faut modifier à chaque fois la date et transférer sur site
$sql2 = " DELETE FROM `dsb_site_log` WHERE `time`  < '2014-11-09 00:00:00.000000' ";   //  suppression de tout avant la date
Par avance merci

Re: Supprimer automatiquement lignes base mysql à partir d'une date donnée

Posté : 09 nov. 2015, 16:51
par Maitrepylos
Simplement par 'cron' !

Re: Supprimer automatiquement lignes base mysql à partir d'une date donnée

Posté : 09 nov. 2015, 17:20
par or 1
un truc du genre :
where TO_SECONDS(time) < (TO_SECONDS(now()) - (365 * 24 * 3600))

Re: Supprimer automatiquement lignes base mysql à partir d'une date donnée

Posté : 09 nov. 2015, 18:54
par bob56@
salut or 1 :wink:

çà a l'air de fonctionner, j'ai importé log sur deux ans et après installation script je me suis mis en mode admin et j'ai pu observer que toutes les lignes avant dimanche 09/11/2014 avaient disparu de la base.

je mets en résolu demain si tout roule (log -1j) mais j'y crois :D
$sql2 = " DELETE FROM `dsb_site_log`  where TO_SECONDS(time) < (TO_SECONDS(now()) - (365 * 24 * 3600)) ";

Maitrepylos il ne mais pas nécessaire de mettre la tâche en cron, merci du conseil quand même

Re: Supprimer automatiquement lignes base mysql à partir d'une date donnée

Posté : 10 nov. 2015, 10:49
par bob56@
=D> ça roule, encore merci