mysql 启动事件 启动触发器功能

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

事件调度器有时也可称为临时触发器(temporal triggers),

因为事件调度器是基于特定时间周期触发来执行某些任务,而触发器(Triggers)是基于某个表所产生的事件触发的,区别也就在这里。 

在使用这个功能之前必须确保event_scheduler已开启,可执行 

开启:

①(开启事件触发器)

1
SET GLOBAL event_scheduler =  1 ;

  

或我们可以在配置my.ini文件 中加上 event_scheduler = 1


②或  

1
SET GLOBAL event_scheduler = ON;


来开启,也可以直接在启动命令加上“–event_scheduler=1”,例如: 

mysqld ... --event_scheduler=1 

要查看当前是否已开启事件调度器,可执行如下SQL: 

1
2
3
SHOW VARIABLES LIKE  'event_scheduler'
或 
SELECT @ @event_scheduler ;

或 

拥有 SUPER 权限的账户执行 SHOW PROCESSLIST 就可以看到这个线程了。


在使用事件这个功能,首先要保证你的mysql的版本是5.1以上,然后还要查看你的mysql服务器上的事件是否开启。

如果看到event_scheduler为on

或者PROCESSLIST中显示有event_scheduler的信息说明就已经开启了事件。如果显示为off

或者在PROCESSLIST中查看不到event_scheduler的信息,那么就说明事件没有开启,我们需要开启它。


其他:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
-- 开启事件调度的支持
SET GLOBAL event_scheduler =  1 ;
-- 列出事件
SHOW EVENTS;
SHOW CREATE EVENT del_user;
   
-- 查询触发器是否启动。
SHOW VARIABLES LIKE  'event_scheduler'
 
-- 定义存储过程  (修改test表里面的id都为 5
DELIMITER  //
DROP PROCEDURE IF EXISTS usp_update_test;
CREATE PROCEDURE usp_update_test()
-- expire_interval: the unit is hour
-- delete_per_count: specify the count  do  every delete operation
BEGIN
     DECLARE id INT;
         SET id= 5 ;   
         update test set id=id;
END  //
DELIMITER ;
-- 定义事件  (一分钟执行一次上面的存储过程)
DROP EVENT IF EXISTS del_test;
CREATE EVENT del_test
ON SCHEDULE EVERY  1  MINUTE
DO
CALL usp_update_test()




      本文转自建波李 51CTO博客,原文链接:http://blog.51cto.com/jianboli/1884180,如需转载请自行联系原作者



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
关系型数据库 MySQL
Mysql基础第二十八天,使用触发器
Mysql基础第二十八天,使用触发器
28 0
Mysql基础第二十八天,使用触发器
|
2月前
|
存储 前端开发 JavaScript
简单实现一个事件触发器
简单实现一个事件触发器
31 0
|
10天前
|
监控 安全 关系型数据库
基于vue2 + element +mysql医院不良事件上报系统源码
不良事件管理系统从时间上报、PDCA分析、事件整改、评估效果实行闭环管理和分析,满足医院追根溯源,全流程闭环管理,提高不良事件上报率,减少同类不良事件发生,提高医疗安全。通过报告不良事件,及时发现潜在的不安全因素
18 1
|
28天前
|
存储 SQL 数据挖掘
视图、触发器和存储过程:提升数据库功能
视图、触发器和存储过程:提升数据库功能
19 1
|
1月前
|
存储 SQL 关系型数据库
【MySQL 数据库】10、MySQL 的触发器
【MySQL 数据库】10、MySQL 的触发器
20 0
|
2月前
|
SQL 存储 关系型数据库
MySQL技能完整学习列表8、触发器、视图和事务——1、触发器(Triggers)的使用——2、视图(Views)的创建和使用——3、事务(Transactions)的管理
MySQL技能完整学习列表8、触发器、视图和事务——1、触发器(Triggers)的使用——2、视图(Views)的创建和使用——3、事务(Transactions)的管理
34 0
|
3月前
|
关系型数据库 MySQL 分布式数据库
PolarDB MySQL企业版与标准版功能对比:如何选择适合您的版本?
随着数字化时代的到来,企业对于数据处理的需求越来越高,而数据库作为数据处理的核心,其性能和成本成为了企业关注的焦点。阿里云全新推出的PolarDB MySQL企业版和标准版,以全新的架构和优化,为企业提供了高性能、低成本的数据库解决方案。但在功能上,这两个版本有很多差异,我们该如何选择呢?
55 2
|
3月前
|
SQL 关系型数据库 MySQL
MySQL触发器 使用案例
MySQL触发器 使用案例
29 0
|
11天前
|
关系型数据库 MySQL 数据库
mysql卸载、下载、安装(window版本)
mysql卸载、下载、安装(window版本)
|
30天前
|
关系型数据库 MySQL 数据库
rds安装数据库客户端工具
安装阿里云RDS的数据库客户端涉及在本地安装对应类型(如MySQL、PostgreSQL)的客户端工具。对于MySQL,可选择MySQL Command-Line Client或图形化工具如Navicat,安装后输入RDS实例的连接参数进行连接。对于PostgreSQL,可以使用`psql`命令行工具或图形化客户端如PgAdmin。首先从阿里云控制台获取连接信息,然后按照官方文档安装客户端,最后配置客户端连接以确保遵循安全指引。
82 1