Försök att skapa händelse som körs på databasen automatiskt efter det tidsintervall du vill ha.
Här är ett exempel:Om du vill ta bort poster som är mer än 30 dagar gamla från någon tabell "tabellnamn", har kolumnposten "datumtid". Sedan körs följande fråga varje dag, vilket kommer att utföra nödvändiga saneringsåtgärder.
CREATE EVENT AutoDeleteOldNotifications
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
DO
DELETE LOW_PRIORITY FROM databaseName.tableName WHERE datetime < DATE_SUB(NOW(), INTERVAL 30 DAY)
Vi måste lägga till ON COMPLETION PRESERVE
att behålla eventet efter varje löpning. Du kan hitta mer information här:http://www.mysqltutorial .org/mysql-triggers/working-mysql-scheduled-event/