Du kan försöka använda MySQL Events för det:
CREATE EVENT IF NOT EXISTS `dbName`.`eventName`
ON SCHEDULE
EVERY 1 DAY // or 1 HOUR
COMMENT 'Description'
DO
BEGIN
DELETE FROM `dbName`.`TableName` WHERE `expireDateCol` < NOW();
END
OBS att MySQL Event Scheduler måste vara aktiverat på din server:
SET GLOBAL event_scheduler = ON;