2015-09-05 62 views
0

第一个事件删除表中的所有行:每天创建活动,在特定的时间

CREATE DEFINER=`frontdes_user`@`localhost` EVENT `DELETE_flux_receptie` ON SCHEDULE EVERY 1 DAY STARTS '2015-09-06 00:00:00' ON COMPLETION PRESERVE ENABLE DO DELETE FROM `flux_receptie` 

第二个事件将删除同桌id列:

CREATE DEFINER=`frontdes_user`@`localhost` EVENT `delete_id` ON SCHEDULE EVERY 1 DAY STARTS '2015-09-06 00:00:00' ON COMPLETION PRESERVE ENABLE DO ALTER TABLE `flux_receptie` DROP `id` 

第三项活动将id列添加到同一个表中:

CREATE DEFINER=`frontdes_user`@`localhost` EVENT `add_id` ON SCHEDULE EVERY 1 DAY STARTS '2015-09-06 00:00:00' ON COMPLETION PRESERVE ENABLE DO ALTER TABLE `flux_receptie` ADD `id` INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (`id`) 

我想让这些事件每天运行: 第一个每天06:30,第二个每天06:35和第三个每天06:40。 任何人都可以帮助我请正确的时间表?最好的问候,波格丹。

回答

1

如果您可以访问你的机器就可以使用的cronjob,一个crontab调度的基本格式包括6个领域,设置在同一行,用空格分隔,格式如下:

minute hour day month day-of-week command-line-to-execute 

第一创建一个脚本:

第一个脚本

#!/bin/bash 

mysql --user=[username] --password=[password] --database=[db name] --execute="CREATE DEFINER=`frontdes_user`@`localhost` EVENT `DELETE_flux_receptie` ON SCHEDULE EVERY 1 DAY STARTS '2015-09-06 00:00:00' ON COMPLETION PRESERVE ENABLE DO DELETE FROM `flux_receptie`" 

秒OND脚本

#!/bin/bash 

mysql --user=[username] --password=[password] --database=[db name] --execute="CREATE DEFINER=`frontdes_user`@`localhost` EVENT `delete_id` ON SCHEDULE EVERY 1 DAY STARTS '2015-09-06 00:00:00' ON COMPLETION PRESERVE ENABLE DO ALTER TABLE `flux_receptie` DROP `id`" 

第三脚本

#!/bin/bash 

mysql --user=[username] --password=[password] --database=[db name] --execute="ALTER TABLE `flux_receptie` ADD `id` INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (`id`)" 

然后创建使用3的cron crontab的

30 6 * * /路径/的crontab -e

-e */scriptOne

35 6 * * */path/of/scriptTwo

40 6 * * */path/of/scriptThree

+0

cronJob是一个程序吗?是的,我有权访问。它在我的wamp服务器上。 –

+0

我不知道它如何在Windows上工作,但名称是schtasks使用命令行实用程序。对不起,但我想你是在Linux机器 – Bestbug

+0

我有一个事件调度程序在phpmyadmin。我应该解决这个问题。 –

相关问题