sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo eliminar automáticamente cada x minutos?

Puede usar el Programador de eventos de MySQL.

Requisito previo:

Debe tener event_scheduler activado en su servidor mysql.

Compruebe si el programador de eventos está ON o OFF

SELECT @@event_scheduler;

Para activar event_scheduler ON ejecuta la siguiente consulta:

SET GLOBAL event_scheduler = ON;

Nota: Si reinicia MYSQL Server entonces el estado del programador de eventos se restablecerá a menos que se escriba lo siguiente en el archivo de configuración.

Para Windows: en mi.ini archivo escribe esto bajo [mysqld] sección

[mysqld]
event_scheduler=on

Para Linux: en mi.cnf archivo

[mysqld]
event_scheduler=on

Evento:

El siguiente evento eliminará los datos de la tabla llamada 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;

El evento comenzará por primera vez a las '2016-03-23 00:00:00' y después de eso, el evento se programará en intervalos de 2 minutos y se eliminarán los datos de su tabla.

Puedes usar Truncate en lugar de DELETE .

TRUNCATE vs DELETE