如何在一段时间后触发mysql事件?
问题描述:
我有一个存储在线用户的mysql数据库。在一段时间后触发事件是否有效的方式来检测不活动的用户(将其状态设置为“脱机”)?我正在存储用户最后一次在表中激活的时间(TIMESTAMP值)。如何在一段时间后触发mysql事件?
谢谢!
答
定期运行PHP脚本,你有很多的解决方案:
- 您使用cron作业(这意味着你有一台服务器)。要学会做到这一点,你可以visit this link。
- 您使用MySQL提供的Event Scheduler。
- 如果你没有服务器,你可以使用定期启动你的任务的提供商,最知名的是Webcron.org(这不是免费的)。
- 其他解决方案,您将创建一个脚本PHP,它将在后台运行,同时等待正确的时间执行操作;为此,您必须有权访问功能
set_time_limit()
和ignore_user_abort()
。然后你创建一个循环连续的脚本,并检查是否有任何事情要做。
您可以使用cron作业调用PHP脚本来更新用户表。 – j08691 2012-08-06 03:28:23
http://dev.mysql.com/doc/refman/5.1/en/events.html – 2012-08-06 03:29:00