x小时后MYSQL表丢失
Posted
技术标签:
【中文标题】x小时后MYSQL表丢失【英文标题】:MYSQL Table drop after x hours 【发布时间】:2012-06-11 12:37:48 【问题描述】:是否可以在 mysql 表创建中编写额外的代码,使其在 X 时间后自行删除?就像一个临时表,但它会持续更长时间。
我需要为临时任务创建表,但我需要它们比会话持续更长的时间
【问题讨论】:
你想达到什么目的?某种形式的缓存? 我正在为人们创建一种上传 CSV 文件的方式。上传后,他们需要为哪些字段选择哪些内容并进行操作(类似于 mailchimp 或活动监视器)。我看不到这与临时表一起使用,因为它们需要能够被操纵,然后被转移和删除。但是,如果有人没有完成该程序,那么表格就会摆满数据 【参考方案1】:CREATE EVENT myevt
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR
DO
DROP TABLE IF EXISTS MyTable;
【讨论】:
【参考方案2】:在您使用 CSV 文件的情况下,我建议您不要在设置过程中创建数据库表,因为这会给您的 DBMS 带来不必要的压力。更好的方法是:
-
将上传的文件移动到“传入”目录
解析 CSV 的前几个字节以确定您需要的列数和其他数据
让用户分配东西
以应用程序需要的方式将 CSV 文件读取到 DB
删除文件
为了清理 CSV 文件,您可以使用 cronjob 删除旧文件:find /dir/with/csv/files -type f -cmin +TIMEINMINUTES -delete
【讨论】:
以上是关于x小时后MYSQL表丢失的主要内容,如果未能解决你的问题,请参考以下文章