前提:表中有date(defualt CURRENT_TIMESTAMP)字段

基础语句:

查看定时事件线程是否打开: SHOW VARIABLES LIKE '%event_scheduler%';

打开定时事件线程:SET GLOBAL event_scheduler=1;

查看已有的定时事件任务:SHOW EVENTS;

需求1:每过5秒钟删除过期30分钟的数据

mysql语句(先删除原事件):

DROP event IF EXISTS e_delete_wxauth;
CREATE EVENT e_delete_wxauth
ON SCHEDULE
EVERY 5 SECOND
DO
DELETE FROM weixin_auth WHERE DATE < DATE_SUB(CURRENT_TIMESTAMP,INTERVAL 30 MINUTE);

需求2:每天0点删除已过期30分钟事件

mysql语句(先删除原事件):

DROP event IF EXISTS e_delete_wxauth;
CREATE EVENT e_delete_wxauth
ON SCHEDULE
EVERY 1 DAY STARTS '2000-01-01 00:00:00'
DO
DELETE FROM weixin_auth WHERE DATE < DATE_SUB(CURRENT_TIMESTAMP,INTERVAL 30 MINUTE);

(PS:STARTS只是从这时间起线程开始执行,比如说现在时间是2016-09-20 12:30:15执行此SQL语句,要等2016-09-21 00:00:00才开始生效)

需求3:每天3点更新金币排行榜

DELIMITER |
CREATE  EVENT `e_updata_rank_share_gold`
ON SCHEDULE
EVERY 1 DAY STARTS '2000-01-01 03:00:00'
DO
BEGINDELETE FROM rank_gold;INSERT INTO rank_gold SELECT `user_id`,`username`,`img`,SUM(gold_num) AS gold FROM `gold_log` LEFT JOIN USER ON user.id=user_id  WHERE gold_type=3 GROUP BY user_id ORDER BY gold DESC LIMIT 0,15;
END |
DELIMITER ;

周期:

YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND

文献参考:

http://dev.mysql.com/doc/refman/5.7/en/create-event.html

http://blog.csdn.net/acmain_chm/article/details/7703870

本文出处:

CSDN博客地址 http://blog.csdn.net/leytton/article/details/52643875

MySQL定时任务删除数据相关推荐

  1. linux设置mysql定时任务_原创 Linux下实现Mysql定时任务备份数据

    本实例将创建目录放置于/mnt目录下,可根据具体情况放置于其他目录: cd /mnt mkdir dbback pwd /mnt/dbback 创建shell脚本 脚本名称可根据自己规范进行自定义: ...

  2. linux mysql 定时任务_Linux下Mysql定时任务备份数据的实现方法

    前言 备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程.而对于一些网站.系统来说,数据库就是一切,所以做好数据 ...

  3. mysql 刷新二进制日志_使用binlog日志恢复MySQL数据库删除数据的方法

    binlog日志简介: binlog 就是binary log,二进制日志文件,这个文件记录了MySQL所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间. b ...

  4. mysql 命令删库名,MySQL控制台删除数据库命令 drop database 数据库名

    MySQL控制台删除数据库命令 drop database 数据库名 分类:数据库| 发布:佚名| 查看: | 发表时间:2014/4/30 命令:drop database 例如:删除名为 camn ...

  5. mysql数据库删除数据的三种方式:

    mysql数据库删除数据的三种方式: delete from table where 直接删除表中的某一行数据,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作.所以delete相 ...

  6. MySQL基本操作——删除数据各类情况总结

    MySQL基本操作--删除数据各类情况总结 一.删除单张表&按条件删除表中行数据 二.删除数据库中所有表且不保留表结构 三.一次性删除整个数据库中所有表数据并保留表结构 附录:informat ...

  7. mysql定期删除数据_mysql数据库如何实现定期删除数据库一些东西

    展开全部 mysql定时任务e68a8462616964757a686964616f31333337383863 自 MySQL5.1.6起,增加了一个非常有特色的功能–事件调度器(Event Sch ...

  8. mysql中用于删除数据的是什么意思_从mysql中删除数据最安全的方法是什么? (PHP / MySQL的)...

    我想允许用户和我(管理员)删除mysql中的数据. 我曾经有过remove.php,可以从需要删除的内容中获取$_GETs,例如- remove.php?action = post& post ...

  9. 在mysql中删除数据后,添加数据,id值依然从删除的位置开始增加,问题详解。

    +----+--------------+-----+----------------------+----------+ | id | name | age | email | isActive | ...

最新文章

  1. 智能车竞赛中视觉AI组别的打把问题
  2. 802.11ac和SD-WAN有什么联系?
  3. 4行代码AC——L1-024 后天(5分)
  4. 【POJ - 1836】Alignment(dp,LIS,最长上升子序列类问题)
  5. WordPress主题LensNews1.8模板源码,WP多功能新闻积分商城主题
  6. Spring :Spring Aop 创建代理
  7. 20155229 2016-2007-2 《Java程序设计》第一周学习总结
  8. DedeAMPZ多站点配置+支持.htaccess伪静态
  9. CentOS6.5 环境安装配置
  10. tempdb相关文章
  11. mongodb的mapReduce查询
  12. 从著名的list_head看linux内核中OO 从Unix分层内核栈以及中断处理看Linux内核的另类
  13. SPOJ DISUBSTR Distinct Substrings 后缀数组
  14. linux查看创建目录命令,Linux菜鸟——常见命令一 查看及创建目录文件等命令
  15. Pytorch学习笔记(7)——模型放GPU上经常报CUDA错该怎么办
  16. python微信语音转发方法_最全的微信语音转发方法,最简单的方式大家已经帮你选出来了...
  17. Github每日精选(第17期):Django下的内容管理系统wagtail
  18. python两种方法求ROC曲线下面积(AUC)
  19. Win10应用设计的那些事儿
  20. 人工神经网络的训练步骤,神经网络常用训练方法

热门文章

  1. 计算机主机前后,电脑cpu后面的字母是什么意思
  2. win10找不到gpedit.msc怎么办
  3. 设置PHP的环境变量,区分PHP的测试环境和正式环境【php】
  4. shell入门学习笔记-12-命令详解: echo与printf
  5. 信息安全技术——(六)网络与系统攻击技术
  6. Spring 官宣:换掉 JVM!
  7. 【C 语言之项目实战】生成随机数并排序(详细版)
  8. android开发论坛
  9. jdk配置环境变量(win10)
  10. spring boot(7)-mybatis全注解化