我有一个名为$ stack bench my-package:bench:gauge another-package:bench:criterion
的表。我想每30天删除一次日志。有没有可能自动执行此操作的方法。我在项目中使用user_logs
。
答案 0 :(得分:2)
您可以设置一个事件来删除30天以上的记录,例如:
CREATE EVENT IF NOT EXISTS `Clean_Older_Than_1_month_logs`
ON SCHEDULE
EVERY 1 DAY_HOUR
COMMENT 'Clean up user_logs older than 1 month.'
DO
DELETE FROM user_logs
WHERE user_logs_date < DATE_SUB(NOW(), INTERVAL 1 MONTH)
答案 1 :(得分:0)
在这里,您应该在30天后在Js中使用'setInterval()'进行ajax调用。
index.html 页面
$(document).ready(function(){
setInterval(function(){
alert("Event Fire");
$.ajax({
url: "30_day_event.php",
success: function(result){
alert('database operation done');
}
});
}, 1000*60*60*24*30);
});
30_day_event.php 页面
//your your logic to delete data from user_logs table
//your callback code