MYSQL事件查看器使用介绍

MYSQL事件查看器使用介绍

MySQL事件(Event)是MySQL数据库中一种定时执行的MySQL代码,可以用于执行一些特定的MySQL任务,表现形式类似于系统中的计划任务。

MySQL事件可以快速便捷的实现自动化业务需求,比如定时邮件发送、定时备份数据、定时统计分析等有价值的MySQL脚本。

下面分为三个部分进行MYSQL事件查看器的使用介绍:

一、如何启用MySQL事件调度器

在MySQL中,事件调度器默认是关闭的,要想使用事件调度器必须手动发出以下命令打开:

SET GLOBAL event_scheduler = ON;

可以使用以下命令进行验证是否成功打开:

SHOW VARIABLES LIKE 'event_scheduler';

显示结果如下,则表明事件调度器已经成功打开:

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| event_scheduler | ON    |
+-----------------+-------+

二、如何创建MySQL事件

使用CREATE EVENT语句创建MySQL事件,一个MySQL事件包含事件名称、事件的开始和结束时间、事件的调度时间、事件所执行的SQL语句等。示例如下:

CREATE EVENT myevent
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
DO
  BEGIN
    INSERT INTO mytable (message) VALUES ('Hello, World');
  END;

上例中创建了一个事件名为myevent的MySQL事件,事件将在距当前时间1天后执行,而执行的内容是向mytable表中插入一条消息“Hello, World”。

三、如何查看MySQL事件

可以使用如下命令查看MySQL事件:

SHOW EVENTS;

可以使用如下命令查看有关特定事件的详细信息:

SHOW CREATE EVENT myevent;

示例说明:

  1. 创建一个每月执行的MySQL事件,在事件调度器启动后,该事件将每月在1号凌晨1点执行一个INSERT语句,向mytable表中插入一行数据。
CREATE EVENT myevent
ON SCHEDULE
    EVERY 1 MONTH
    STARTS DATE_FORMAT(NOW(),'%Y-%m-01 01:00:00')
DO
BEGIN
    INSERT INTO mytable(message) VALUES('This is a monthly task!');
END;
  1. 查看MySQL事件:
SHOW EVENTS;

显示结果如下:

+----------+----------+-----------+-----------+---------+-----------+----------+------------+----------------------+----------------------+--------------------+-----------------+----------------+------------+------------+----------------+------+----------------------+----------------------+--------------------------+----------------------+----------------------+--------------------+
| Db       | Name     | Definer   | Time zone | Type    | Execute at| Interval | Status     | Originator           | character_set_client| collation_connection| Database Collation|        body_utf8| sql_mode   | comment        |   Id | Create Event         | Modify Event         |    Start Time            |      End Time         |     Interval Value |      Starts |
+----------+----------+-----------+-----------+---------+-----------+----------+------------+----------------------+----------------------+--------------------+-----------------+----------------+------------+------------+----------------+------+----------------------+----------------------+--------------------------+----------------------+----------------------+--------------------+
| mydb     | myevent  | root@%    | SYSTEM    | RECUR-  | NULL      | 1 MONTH  | ENABLED    | 0                    | utf8                 | utf8_general_ci    | utf8_general_ci | BEGIN INSERT INTO m| TRADITIONAL| This is a monthly task! |    1 | CREATE EVENT myevent| ALTER EVENT myevent | 2021-11-01 01:00:00.0000 | NULL                 | +00:00:00.00      |             |
+----------+----------+-----------+-----------+---------+-----------+----------+------------+----------------------+----------------------+--------------------+-----------------+----------------+------------+------------+----------------+------+----------------------+----------------------+--------------------------+----------------------+----------------------+--------------------+

从上述结果可以看出,myevent事件已经成功创建,事件名称为myevent,时间区间为当前时间往后每月的1号1点执行一次,事件状态为已启用。

  1. 查看特定事件的详细信息:
SHOW CREATE EVENT myevent;

显示结果如下:

| Event | sql_test.myevent | CREATE DEFINER=`root`@`%` EVENT `myevent` ON SCHEDULE EVERY 1 MONTH STARTS '2021-11-01 01:00:00' ON COMPLETION NOT PRESERVE ENABLE DO INSERT INTO mytable(message) VALUES('This is a monthly task!') |

从上述结果可以看出,myevent事件包含名称、时间调度规则以及事件所执行的SQL语句。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MYSQL事件查看器使用介绍 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • Go语言编译程序从后台运行,不出现dos窗口的操作

    首先,Go语言的编译器可以在后台运行,并且不会出现DOS窗口,这是因为可以使用Go语言的官方IDE和其他第三方开发环境,如Visual Studio Code或Sublime Text等来进行编译并运行程序。 以下是两个示例说明: 使用Goland IDE Goland是一款强大的Go语言开发IDE,可以让开发人员编写,调试和测试Go语言程序。在编译和运行程…

    database 2023年5月22日
    00
  • CentOS下PHP安装Oracle扩展

    下面为你详细讲解“CentOS下PHP安装Oracle扩展”的完整攻略。 确定系统环境 在开始安装Oracle扩展之前,需要确保系统环境已经正确搭建。以下是安装Oracle扩展所需的系统环境: CentOS 7.x系统 PHP 7.x版本 Oracle Instant Client 确保系统环境正确后,我们可以开始安装Oracle扩展。 安装PHP OCI8…

    database 2023年5月22日
    00
  • mysql语法之DQL操作详解

    MySQL语法之DQL操作详解 DQL是MySQL中的数据查询语言,其目的是从数据库中获取数据。本篇文章将会详细介绍MySQL的DQL操作,包括查询语句、排序、限制、分组、聚合等内容。 查询语句 在MySQL中,最基本的查询语句是SELECT,其语法如下: SELECT column1, column2, … FROM table_name 其中colu…

    database 2023年5月22日
    00
  • MySQL5.6 数据库主从同步安装与配置详解(Master/Slave)

    MySQL是一种开源关系型数据库管理系统,在数据库管理中有重要的作用。而主从同步是MySQL集群环境中最常用且重要的方案,因此,本文将为您详细讲解MySQL5.6数据库主从同步安装与配置。 1. 主从同步概念 主从同步是一种数据同步的方案,在集群环境下使用广泛。它使用一个主节点和多个从节点的方式,将主节点的数据同步到从节点,确保数据的一致性和高可用性。 2.…

    database 2023年5月22日
    00
  • 【SpringBoot】整合Redis实战

    ========================9、SpringBoot2.x整合Redis实战 ================================   1、分布式缓存Redis介绍 简介:讲解为什么要用缓存和介绍什么是Redis,新手练习工具 通过缓存减少数据库访问,提高访问速度 1、redis官网 https://redis.io/down…

    Redis 2023年4月13日
    00
  • 大型网站的实例分析 掌握构建大型网站的架构

    大型网站的实例分析:掌握构建大型网站的架构 在构建大型网站时,需要考虑到以下几个方面: 1. 高可用性 在大型网站中,高可用性是非常重要的,一旦出现故障,会导致系统崩溃,损失巨大。为了保证高可用性,我们可以采用以下措施: 1.1 负载均衡 负载均衡是通过向多个服务器分配负载来实现高可用性的技术。它可以根据服务器的负载情况自动将请求分配到不同的服务器上,从而避…

    database 2023年5月19日
    00
  • Zabbix安装图文教程(需要LAMP或者LNMP运行环境)

    Zabbix安装图文教程(需要LAMP或者LNMP运行环境) 介绍 Zabbix是一个开源的网络监控系统,可以监控服务器、网络设备、应用程序、数据库等,支持邮件、短信、微信、电话等方式的告警通知。本文提供基于LAMP或LNMP环境的Zabbix安装攻略。 环境要求 操作系统:CentOS、Debian、Ubuntu等Linux发行版。 LAMP或LNMP环境…

    database 2023年5月22日
    00
  • linux查看目录的四种方法(ls只显示目录)

    这里是关于“Linux查看目录的四种方法”的详细攻略。 1. 使用ls命令查看目录 在Linux系统中,使用ls命令可以查看当前工作目录下的所有文件和目录。如果只想看到目录,可以使用ls -d */命令,其中-d表示只展示目录,*/表示匹配所有目录名。 示例一:查看当前目录下的所有目录 $ ls -d */ dir1/ dir2/ dir3/ 2. 使用fi…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部