Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment supprimer automatiquement toutes les x minutes ?

Vous pouvez utiliser le planificateur d'événements MySQL.

Prérequis :

Vous devez avoir event_scheduler ON sur votre serveur mysql.

Vérifiez si le planificateur d'événements est ON ou OFF

SELECT @@event_scheduler;

Pour activer event_scheduler ON exécutez la requête suivante :

SET GLOBAL event_scheduler = ON;

Remarque : Si vous redémarrez MYSQL Server alors l'état du planificateur d'événements sera réinitialisé à moins que ce qui suit ne soit écrit dans le fichier de configuration.

Pour Windows : dans mon.ini fichier écrire ceci sous [mysqld] rubrique

[mysqld]
event_scheduler=on

Pour Linux : dans mon.cnf fichier

[mysqld]
event_scheduler=on

Événement :

L'événement suivant supprimera les données de la table nommée tablename .

CREATE 
EVENT `deleteEvent`
ON SCHEDULE EVERY 2 MINUTE STARTS '2016-03-23 00:00:00'
ON COMPLETION NOT PRESERVE
ENABLE
DO
DELETE FROM tablename;

L'événement débutera pour la première fois à '2016-03-23 00:00:00' et après cela, l'événement sera programmé toutes les 2 minutes d'intervalle et supprimera les données de votre table.

Vous pouvez utiliser Truncate au lieu de DELETE .

TRUNCATE vs DELETE