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。谁能帮我制定正确的时间表?最好的问候,波格丹。

4

1 回答 1

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`"

第二个脚本

#!/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 croncrontab -e

crontab -e

30 6 * * * /path/of/scriptOne

35 6 * * * /path/of/scriptTwo

40 6 * * * /path/of/scriptThree

于 2015-09-05T22:10:03.240 回答