1

我创建了一个注册新闻信函的脚本。但在接受此过程之前,必须验证已注册的邮件。所以...注册后,脚本将数据插入到news_letter具有此值的行的行中:reg_mail,,val_codereg_time...

到目前为止,这个过程是在注册后完成的。该脚本创建一个随机代码并获取NOW()时间。然后保存在数据库中。

之后,如果其他人进入reg页面,脚本将向数据库发送查询并删除例如 5 小时过去的行。

我想改变这个过程并告诉mysql自动删除经过特定时间的行而不向数据库发送任何查询。

可能吗?如果是这样,我该怎么做?

4

1 回答 1

2

这是不可能的。使用纯 mysql 可以做的最好的事情是定期触发存储过程来清理数据库。

如果您想要这种功能,您将不得不使用其他类型的存储(例如 memcached 或 cassandra 很好地管理 ttl)或应用程序层来保持内存 id 过期(一个简单的过程读取您在其中的文件写一个带有时间戳的事件列表就足够了)。

于 2013-06-12T08:18:43.397 回答