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

¿Truncar el trabajo cron de la tabla Mysql?

La razón más probable por la que falla su comando es que no proporcionó una ruta absoluta para mysql. Hazlo de esta manera

/path/to/mysql -uderp_example -pexample -hlocalhost -Dexample -e"TRUNCATE TABLE juice box"
^^^^^^^^

Debería funcionar bien.

Es porque cron se ejecuta bajo una cuenta que no tiene una RUTA definida o no incluye una ruta a mysql.

Ahora hay otra opción:usar un evento MySQL

CREATE EVENT update_date_column 
  ON SCHEDULE EVERY 1 HOUR STARTS NOW()
  DO TRUNCATE TABLE juicebox;

Si decide ir con un enfoque de evento:

  • use SHOW EVENTS para enumerar los eventos creados con sus atributos (por ejemplo, status )
  • 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í