我有一个带有mysql数据库的php构建的网站。
我需要一个sql函数每个月运行一次。
我将如何做到这一点?
修改
真的很抱歉没说清楚。我没有Linux VPS。只是一个基本的托管服务与PHP和MySQL的功能。我正在考虑将来购买一台“真正的”服务器但是现在,还有其他方法吗?
答案 0 :(得分:3)
如果您对服务器有适当的访问权限,我会设置CRON作业。
大多数现代发行版都有一个文件夹/etc/cron.monthly
,您可以将脚本放在那里,每个月都会运行。
如果您希望在运行脚本时获得更多控制权,则可以设置自己的CRON条目。
答案 1 :(得分:3)
每个人似乎都希望你使用cronjob 问题是需要超级用户访问服务器 我建议改用MySQL事件。
请注意,这确实需要MySQL数据库中的超级用户访问权限。
请参阅:http://dev.mysql.com/doc/refman/5.1/en/events.html
首先确保启用了事件调度程序:
SET GLOBAL event_scheduler = ON;
您可以按如下方式设置事件:
DELIMITER $$
CREATE EVENT IF NOT EXISTS event_name ON SCHEDULE EVERY MONTH
STARTS CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
ENABLE
COMMENT 'comment'
DO BEGIN
//SQL statements here.
END $$
DELIMITER ;
答案 2 :(得分:2)
设置一个指向包含对SQL查询调用的PHP文件的cronjob。
答案 3 :(得分:1)
你可以用cronjobs解决这个问题:)。
映入眼帘, 斯特凡
答案 4 :(得分:1)
CRON JOB就是解决方案。 Tuts here。