首页
学习
活动
专区
圈层
工具
发布

mysql event执行记录

基础概念

MySQL Event 是 MySQL 数据库中的一个功能,它允许用户创建定时任务。这些任务可以在指定的时间或周期性地执行特定的 SQL 语句或存储过程。Event Scheduler 是 MySQL 中的一个组件,负责管理和执行这些定时任务。

相关优势

  1. 自动化:可以自动执行一些重复性的任务,如数据备份、清理等。
  2. 简化管理:通过一个集中的地方管理所有定时任务,而不是在多个脚本或程序中分散管理。
  3. 灵活性:可以设置任务的执行时间、频率和重复次数。

类型

  1. 一次性事件:只执行一次的事件。
  2. 重复事件:按照指定的时间间隔重复执行。

应用场景

  1. 数据备份:定期备份数据库。
  2. 数据清理:删除过期的数据。
  3. 定时更新:定期更新某些数据或索引。
  4. 日志处理:定期处理和分析日志文件。

执行记录

MySQL Event 的执行记录可以通过查看 mysql.event 表来获取。这个表包含了所有事件的信息,包括事件名称、创建时间、最后执行时间、状态等。

查询执行记录的 SQL 示例

代码语言:txt
复制
SELECT event_name, last_executed, status
FROM mysql.event;

遇到的问题及解决方法

问题:Event 未按预期执行

原因

  1. Event Scheduler 未启用:默认情况下,Event Scheduler 可能是关闭的。
  2. 时间设置错误:事件的执行时间设置不正确。
  3. 权限问题:执行事件的用户没有足够的权限。

解决方法

  1. 启用 Event Scheduler
  2. 启用 Event Scheduler
  3. 检查时间设置:确保事件的执行时间和频率设置正确。
  4. 检查权限:确保执行事件的用户有足够的权限。

问题:Event 执行失败

原因

  1. SQL 语句错误:事件中执行的 SQL 语句有语法错误或其他问题。
  2. 资源限制:数据库服务器资源不足,无法执行事件。

解决方法

  1. 检查 SQL 语句:确保事件中执行的 SQL 语句正确无误。
  2. 检查资源使用情况:查看数据库服务器的资源使用情况,确保有足够的资源来执行事件。

参考链接

通过以上信息,你应该能够更好地理解和应用 MySQL Event 功能,并解决在执行过程中遇到的问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • MySQL binlog event 详解

    记录版本号等元数据信息     QUERY_EVENT: 存储statement类的信息,基于statement的binlog格式记录sql语句,在row模式下记录事务begin标签     XID_EVENT...: 二阶段提交xid记录     TABLE_MAP_EVENT: row模式下记录表源数据,对读取行记录提供规则参考,后面会详细介绍     WRITE_ROWS_EVENT/DELETE_ROWS_EVENT.../UPDATE_ROWS_EVENT: row模式下记录对应行数据变化的记录     GTID_LOG_EVENT: 这个就是记录GTID事务号了,用于5.6版本之后基于GTID同步的方式     ROTATE_EVENT...时候,或者是从库上执行了reset slave 都 产生这个stop_event ?...固定部分:     4bytes    thread_id 可以用于审计     4bytes    该语句的执行时长,单位秒     1byte    执行命令时候所在的库名的字节长度     2bytes

    6.7K31

    JS引擎的执行机制event loop

    2.JS中的event loop(1) 3.JS中的event loop(2) 4.说说setTimeout 首先,请牢记2点: (1) JS是单线程语言 (2) JS的Event Loop是JS的执行机制...是通过的事件循环(event loop),理解了event loop机制,就理解了JS的执行机制 2.JS中的event loop(1) 例1,观察它的执行顺序 console.log(1)...异步任务在event table中注册函数,当满足触发条件后,被推入event queue 同步任务进入主线程后一直执行,直到主线程空闲时,才会去event queue中查看是否有可执行的异步任务,如果有就推入主进程中...以上三步循环执行,这就是event loop 所以上面的例子,你是否可以描述它的执行顺序了呢?...重复以上2步骤,结合event loop(1) event loop(2) ,就是更为准确的JS执行机制了。

    2.4K40

    如何利用ETW(Event Tracing for Windows)记录日志

    ETW是Event Tracing for Windows的简称,它是Windows提供的原生的事件跟踪日志系统。...由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效的事件跟踪日志解决方案。...ETW针对事件的处理是在某个会话(ETW Session)中进行的,ETW Session提供了一个接收、存储、处理和分发事件的执行上下文。...Log,EventAttribute的Channel属性用于设置Event Log通道(Event Log Channel,可以理解为事件从最初的发布到最终被写入日志文件所经历的传输通道)的类型,具体的通道类型定义在如下一个...SecurityEventSource.Instance.SignInFail("李四"); 3: SecurityEventSource.Instance.DenyAccess("王五", "修改密码"); 三、查看日志记录

    2.3K60

    MySQL定时任务(event事件)

    事件取代了原先只能由操作系统的计划任务来执行的工作,而且MySQL的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux下的CRON或Windows下的任务计划)只能精确到每分钟执行一次...processlist | +----+------+-----------+------+---------+------+-------+------------------+ 3.3 例如:创建一个表记录每次事件调度的名字和事件戳...at now() do insert into events_list values('event_now', now()); 查看事件执行结果 mysql> select * from events_list...values('event_now', now()); 查看事件执行结果 mysql> select * from events_list; +------------+-------------...4 查看事件 查看当前所在库的事件 mysql> show events; 查看所有事件 mysql> select * from mysql.event;

    4K20

    如何利用ETW(Event Tracing for Windows)记录日志

    ETW是Event Tracing for Windows的简称,它是Windows提供的原生的事件跟踪日志系统。...由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效的事件跟踪日志解决方案。...ETW针对事件的处理是在某个会话(ETW Session)中进行的,ETW Session提供了一个接收、存储、处理和分发事件的执行上下文。...Log,EventAttribute的Channel属性用于设置Event Log通道(Event Log Channel,可以理解为事件从最初的发布到最终被写入日志文件所经历的传输通道)的类型,具体的通道类型定义在如下一个...SecurityEventSource.Instance.SignInFail("李四"); 3: SecurityEventSource.Instance.DenyAccess("王五", "修改密码"); 三、查看日志记录

    2.1K100

    如何利用ETW(Event Tracing for Windows)记录日志

    ETW是Event Tracing for Windows的简称,它是Windows提供的原生的事件跟踪日志系统。...由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效的事件跟踪日志解决方案。...ETW针对事件的处理是在某个会话(ETW Session)中进行的,ETW Session提供了一个接收、存储、处理和分发事件的执行上下文。...Log,EventAttribute的Channel属性用于设置Event Log通道(Event Log Channel,可以理解为事件从最初的发布到最终被写入日志文件所经历的传输通道)的类型,具体的通道类型定义在如下一个...SecurityEventSource.Instance.SignInFail("李四"); 3: SecurityEventSource.Instance.DenyAccess("王五", "修改密码"); 三、查看日志记录

    2.5K50

    mysql中event的用法详解

    一、基本概念 mysql5.1版本开始引进event概念。event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发。...三、使用权限 单独使用event调用SQL语句时,查看和创建需要用户具有event权限,调用该SQL语句时,需要用户具有执行该SQL的权限。...Event权限的设置保存在mysql.user表和mysql.db表的Event_priv字段中。...当event和procedure配合使用的时候,查看和创建存储过程需要用户具有create routine权限,调用存储过程执行时需要使用excute权限,存储过程调用具体的SQL语句时,需要用户具有执行该...不会有新的事件执行,但现有的正在运行的事件会执行到完毕 对于我们线上环境来说,使用event时,注意在主库上开启定时器,从库上关闭定时器,event触发所有操作均会记录binlog进行主从同步,从库上开启定时器很可能造成卡库

    4.7K70

    SystemVerilog中从event看fork...join执行顺序

    前面我写过一篇关于event的文章。SystemVerilog中event,今天再来说点新花样。...本次仿真使用的仿真器是VCS2019.06 ---- 前面讲到,关于event一般来说有两种触发方式--wait以及@。...其中@需要捕捉到事件event产生的瞬间,稍纵即逝,而wait(event.triggered)则不需要管时间。...上述结果说明线程2中的@并没有被触发,说明可能原因是event_a触发时,@还没有执行。所以应该是从前往后执行的,我再把线程1和线程2换个位置,如果执行了,那么应该就验证了猜想。...上述代码执行后,仿真结果为2--4--1。如下所示: ? 看着这意思,好像以后的顺序都是4在1前面了,所以wait(event.triggered)有改变fork...join执行先后顺序的能力。

    2.1K10

    mysql存储过程执行_mysql存储过程不执行

    test(); 每隔30秒将执行存储过程test,将当前时间更新到examinfo表中id=14的记录的endtime字段中去....旧方案:用脚本写好程序,用linux的crontab定时执行。 本文重点,用mysql定时器定时执行存储程序。...‘%%’; 第二步:开启mysql定时器 如果不是on,就执行 Sql代码 set global event_scheduler=1; 不需要重启mysql 会发现mysql多起了一个daemon进程...(注: 对于我们线上环境来说,使用event时,注意在主库上开启定时器,从库上关闭定时器,event触发所有操作均会记录binlog进行主从同步,从库上开启定时器很可能造成卡库。...可以用如下命令关闭或开启事件: Sql代码 ALTER EVENT event_name ENABLE/DISABLE 下面是我的实例,每天凌晨一点执行 Sql代码 CREATE EVENT `event_call_inproc

    22K20

    【MySQL】MySQL审计操作记录

    简介: 数据库审计能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库受到的风险行为进行告警,对攻击行为进行阻断,它通过对用户访问数据库行为的记录、分析和汇报,用来帮助用户事后生成合规报告...MySQL社区版并没有提供审计功能,注意到mariadb提供了一款server_audit审计插件,经测试此插件在MySQL社区版同样适用。.../plugin/ 把下载好的插件server_audit.so 复制到/usr/lib64/mysql/plugin/ 注意chmod+x server_audit.so 登录mysql执行插件安装命令...执行:更改全局变量 set global server_audit_excl_users='root'; set global server_audit_events='QUERY_DDL,QUERY_DML...server_audit_excl_users:该列表的用户行为将不记录,connect将不受该设置影响 server_audit_mode:标识版本,用于开发测试 5.卸载 mysql> UNINSTALL

    5.3K20
    领券