Ever wanted to run queries in a cronjob? Where to safely put the database credentials? MySQL/ MariaDB can help out with that.
event_scheduler SystemYou must have the event_scheduler enabled, this can be done by running the following query:
SET GLOBAL event_scheduler = ON;
event_scheduler feature.
Another (hacky) way is to use the MySQL server init_file option which runs a SQL script on server startup.The CREATE EVENT query below would run the query after the DO every day at 02:00 in the exampledb database.
CREATE EVENT `exampledb`.`my_cool_table_reset_userOption45` ON
SCHEDULE EVERY 1 DAY STARTS CURRENT_DATE + INTERVAL 1 DAY + INTERVAL 2 HOUR DO
UPDATE
`exampledb`.`my_cool_table`
SET
userOption45 = ''
WHERE
userOption45 != ''
AND STR_TO_DATE(userOption45,
'%Y-%m-%d') <= NOW();
exampledb is the database name.SHOW EVENTS FROM `exampledb`;