【问题标题】:MYSQL Scheduled eventsMYSQL 预定事件
【发布时间】:2016-08-09 14:30:02
【问题描述】:

好的。

所以我有一个表格,在我的网站上使用 PHP 来提取内容。

我需要它每天凌晨 4 点擦桌子。我该怎么做?

结构 如果不存在则创建表 chat ( id int(255) NOT NULL AUTO_INCREMENT, message 长文本不为空, by_user 长文本不为空, is_admin longtext NOT NULL, color longtext NOT NULL, 主键 (id) ) ENGINE=MyISAM 默认字符集=latin1 AUTO_INCREMENT=144 ;

【问题讨论】:

  • 您已经尝试过什么了吗?如果是这样,请您与我们分享一下吗?

标签: mysql events schedule


【解决方案1】:

如果您使用的是 linux 或类似的东西,您可以使用cron job

在命令行中键入以下内容。这将导致您的 cron 文件在编辑器中打开(我们将其设置为 vi)

export EDITOR=vi ;
crontab -e

键入“i”进入插入模式并将以下内容复制粘贴到其中。

* 4 * * *  /path/to/mysql database -e 'TRUNCATE chat' > /dev/null/ 2>&1

然后键入 ESC :wq 以保存文件。现在你有一个每天凌晨 400 点清理表格的 cron 作业。

最后一部分将输出重定向到 /dev/null 如果您有特定的 mysql 用户名和密码,则命令变为

/path/to/mysql -u 用户名 -p 密码数据库 -e 'TRUNCATE chat'

【讨论】:

    【解决方案2】:

    使用SQL语句TRUNCATE TABLE chat;清除表中的数据。

    至于让命令在每天凌晨 4 点执行,这必须使用某种调度组件(如 cron 或 Windows 任务调度器)来完成。您可以创建一个执行上述语句的 PHP 脚本,然后按计划调用该脚本。确保不要将此脚本放置在您的网站可以激活的位置,否则用户可能会在一天中的任何时间调用它。

    【讨论】:

      猜你喜欢
      • 2017-08-28
      • 1970-01-01
      • 1970-01-01
      • 2010-12-26
      • 2022-12-06
      • 1970-01-01
      • 1970-01-01
      • 2016-02-23
      • 2013-09-07
      相关资源
      最近更新 更多