我已创建出勤下载程序,并使用我缺席或出现的员工数据。下午5点后,应删除出勤数据表。我怎么能用mysql调度呢?
答案 0 :(得分:2)
您需要编写一个查询来删除表中的记录。
DELETE * FROM employee;
然后将其放在任何文件中,然后必须在托管服务器上设置CRON。 参考linux服务器https://kayako.atlassian.net/wiki/spaces/DOCS/pages/5734656/Setting+up+a+server+cron+or+scheduled+task
如果您使用的是Windows服务器,则可以使用 http://www.web-site-scripts.com/knowledge-base/article/AA-00487/0/Setup-Cron-job-on-Windows-7-Vista-2008.html
答案 1 :(得分:1)
选项1:
which mysql
,您将获得 Mysql路径 sudo crontab -e
以编辑Cron列表在crontab中添加以下行:
/ usr / bin / mysql -uroot -ppassword -hlocalhost -Ddbname -e" TRUNCATE TABLE juice box"
它应该可以正常工作。
这是因为cron在一个帐户下执行,该帐户既没有定义PATH,也没有包含mysql的路径。
选项2:
现在还有另一种选择 - 使用MySQL event
CREATE EVENT update_date_column
ON SCHEDULE EVERY 1 HOUR STARTS NOW()
DO TRUNCATE TABLE juicebox;
如果您决定采用事件方法:
SHOW EVENTS
列出已创建的事件及其属性(例如status
)SHOW PROCESSLIST
检查事件调度程序是否已启用。如果它开启,您应该看到一个过程" Daemon
"由用户" event_scheduler
"。SET GLOBAL event_scheduler = ON;
启用调度程序。