在mysql中更改事件调度程序状态

时间:2011-09-14 07:56:36

标签: mysql

我的MySql数据库中有5个事件调度程序。 我想从他们那里停止一个事件调度程序。

我使用了以下陈述,

SET GLOBAL event_scheduler = OFF;
SET @@global.event_scheduler = OFF;
SET GLOBAL event_scheduler = 0;
SET @@global.event_scheduler = 0;

但它会停止所有5个事件调度程序。请帮助我。

先谢谢。

此致 SAURABH

3 个答案:

答案 0 :(得分:12)

我认为您的意思是一个调度程序上有5个事件。正确?

以下是禁用一个事件的方法:

    ALTER EVENT myevent
    DISABLE;

以下是禁用整个调度程序(所有事件)的方法:

    SET GLOBAL event_scheduler = OFF;

所有这些都可以在http://dev.mysql.com/doc/refman/5.1/en/events.html阅读 如何禁用一个事件是http://dev.mysql.com/doc/refman/5.1/en/alter-event.html

答案 1 :(得分:0)

如果您需要获取当前的全局事件状态,这可能对您有用;

select @@global.event_scheduler;

答案 2 :(得分:0)

要考虑的一件事:

仅在服务器启动时才可以将事件调度程序设置为DISABLED。如果event_scheduler为ON或OFF,则无法在运行时将其设置为DISABLED。另外,如果在启动时将事件计划程序设置为DISABLED,则无法在运行时更改event_scheduler的值。 在这种情况下,禁用事件调度程序,请使用以下两种方法之一:

  • 作为启动服务器时的命令行选项:

    -event-scheduler = DISABLED

  • 在服务器配置文件中(在Windows上为my.cnf或my.ini 系统),包括服务器将在其中读取的行(用于 例如,在[mysqld]部分):

    event_scheduler =已禁用

https://dev.mysql.com/doc/refman/5.7/en/events-configuration.html