【问题标题】:Setting a limited numer of rows on a MySQL Table, and deleting the old ones to free space在 MySQL 表上设置有限的行数,并删除旧的以释放空间
【发布时间】:2014-05-07 18:26:22
【问题描述】:

MySQL 是否可以在给定表上设置有限(最大)行数,以便在达到此值时,MySQL 将删除旧行以允许自动插入新行?

【问题讨论】:

  • 没有。但是您可以使用事务和简单的技巧,例如 delete from yourtable where id <= max(id)-20,假设您的 id 在序列中不会有“漏洞”。
  • 你可以用触发器来做。

标签: mysql sql automation


【解决方案1】:

您可以编写 cron 作业或 mysql 事件以定期删除行。

【讨论】:

  • 当您谈论 cron 作业时,我想它是使用 php 脚本,如果是这样,我已经知道了,但只有在可能的情况下才需要一种方法来使用 MySQL 执行该操作。除非 MySQL 也有 cron 作业?
  • 我说的是可以在服务器上设置的 cron 作业。这个链接描述了如何在linux上设置cron作业Create Cron Jobs on linux
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-19
  • 2018-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-09
  • 1970-01-01
相关资源
最近更新 更多