手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

MySQL数据库事件调度(Event)

[日期:2014-11-17] 来源:Linux社区  作者:tongcheng [字体: ]

4.创建事件调度每5秒在表中插入数据

MySQL> create event if not exists event_t1 on schedule every  5 second  do insert into t values(1,1,sysdate());
Query OK, 0 rows affected (0.01 sec)

mysql> select * from t;          --查看事件执行数据
+------+------+---------------------+
| a    | b    | c                  |
+------+------+---------------------+
|    1 | 1    | 2014-11-12 15:33:31 |
|    1 | 1    | 2014-11-12 15:33:36 |
|    1 | 1    | 2014-11-12 15:33:41 |
|    1 | 1    | 2014-11-12 15:33:46 |
|    1 | 1    | 2014-11-12 15:33:51 |
|    1 | 1    | 2014-11-12 15:33:56 |
|    1 | 1    | 2014-11-12 15:34:01 |
+------+------+---------------------+
7 rows in set (0.00 sec)

mysql>

 

5.创建事件调度10秒钟后删除t表中所有数据

mysql> create event if not exists event_t2 on schedule every  10  second  do truncate table t;
Query OK, 0 rows affected (0.00 sec)

mysql> select * from t;
+------+------+---------------------+
| a    | b    | c                  |
+------+------+---------------------+
|    1 | 1    | 2014-11-12 15:36:36 |
|    1 | 1    | 2014-11-12 15:36:41 |
+------+------+---------------------+
2 rows in set (0.00 sec)

mysql> select * from t;
Empty set (0.00 sec)

mysql>

 

6.在指定时间删除t表数据

mysql> create event if not exists event_t2 on schedule at timestamp '2014-11-12 15:39:00' do truncate table t;;
Query OK, 0 rows affected, 1 warning (0.02 sec)

mysql> select * from t;
Empty set (0.00 sec)

mysql>

 

7.创建事件调度每天删除t表数据

mysql> create event if not exists event_t2 on schedule every 1 day  do truncate table t;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> select * from t;
Empty set (0.00 sec)

mysql>

 

8.创建事件调度5天后开启删除t表中数据,一个月后停止

mysql> create event if not exists event_t2 on schedule every 1 day  starts current_timestamp + interval 5 day ends current_timestamp + interval 1 month do truncate table t;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql>

 

9.禁用事件调度器

mysql> alter  event event_t2 disable;
Query OK, 0 rows affected (0.00 sec)

mysql>

 

10.启用事件调度器

mysql> alter  event event_t2 enable;
Query OK, 0 rows affected (0.00 sec)

mysql>

 

11.修改事件调度器10天后启用

mysql> alter  event event_t2 on schedule every 10 day;
Query OK, 0 rows affected (0.00 sec)

mysql>

 

12.重命名事件调度器

mysql> alter event event_t2 rename to event_t1;
Query OK, 0 rows affected (0.00 sec)

mysql>

 

13.查看事件调度器的信息

mysql> show events like "event_t1" \G;
*************************** 1. row ***************************
                  Db: test123
                Name: event_t1
            Definer: root@localhost
          Time zone: SYSTEM
                Type: RECURRING
          Execute at: NULL
      Interval value: 10
      Interval field: DAY
              Starts: 2014-11-12 15:47:31
                Ends: NULL
              Status: ENABLED
          Originator: 0
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci
1 row in set (0.00 sec)

ERROR:
No query specified

mysql>

 

14.查看事件调度器的内容

mysql> show create event event_t1 \G;
*************************** 1. row ***************************
              Event: event_t1
            sql_mode: STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
          time_zone: SYSTEM
        Create Event: CREATE DEFINER=`root`@`localhost` EVENT `event_t1` ON SCHEDULE EVERY 10 DAY STARTS '2014-11-12 15:47:31' ON COMPLETION NOT PRESERVE ENABLE DO truncate table t
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci
1 row in set (0.00 sec)

ERROR:
No query specified

mysql>

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-11/109462.htm

linux
相关资讯       MySQL事件调度 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款