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

¿Cómo eliminar datos mysql de la tabla a la medianoche?

Implementar su propio programador de eventos, especialmente como una página web que usa JavaScript es una mala idea. Úselo para eso

  • a cron trabajo para ejecutar DELETE declaración a través de la interfaz de línea de comandos mysql
    /path/to/mysql -u<user> -p"<password>" <db_name> -e "delete from messages"
     CREATE EVENT delete_messages_at_midnight 
     ON SCHEDULE EVERY 1 DAY STARTS CURDATE() + INTERVAL 1 DAY
     DO DELETE FROM messages;

Si opta por el enfoque de eventos de MySQL:

  • use SHOW PROCESSLIST para verificar si el programador de eventos está habilitado. Si está activado, debería ver un proceso "Daemon " por el usuario "event_scheduler ".
  • use SET GLOBAL event_scheduler = ON; para habilitar el programador si actualmente no está habilitado.
  • Más información sobre la configuración del programador de eventos lea aquí