如何定期运行一条SQL语句?
我有一个“原始”SQL 语句,我需要执行它来更新对象的状态(类似于 UPDATE users SET status=1 WHERE
我需要它始终在每 60 秒在后台
执行一次
Ps. 环境是 Ubuntu 10.10 和 Rails 3.0.3
I have a "raw" SQL statement that I need to execute in order to update status of objects (something like UPDATE users SET status=1 WHERE <some conditions>
.
I need this to always run after every 60 seconds in the background.
How do I do this?
Ps. The environment is Ubuntu 10.10 and Rails 3.0.3
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您必须使用 cron (crontab) 定期调用 Rail 脚本来执行此更新。
You'll have to use a cron (crontab) to periodically call a Rail script doing this update.
加载rails环境来运行一条sql语句是一种巨大的资源浪费。
mysql 的 Crontab:
PostgreSQL 的 Crontab:
您可能必须在 crontab 文件顶部设置 PATH 变量,以确保 mysql/psql 命令解析。
希望这有帮助。
Loading rails environment to run one sql statement is a huge waste of resources.
Crontab for mysql:
Crontab for PostgreSQL:
You may have to set PATH variable at the top of your crontab file to make sure that mysql/psql commands resolve.
Hope this helps.