即使重新启动MySQL,也可以通过一种方法来设置全局event_scheduler = ON。您需要将全局系统变量设置为ON,并且即使MySQL重新启动也需要使用此系统变量。
为此,我使用select语句使用系统变量@@ event_scheduler。查询如下:
mysql> select @@event_scheduler;
以下是输出:
+-------------------+ | @@event_scheduler | +-------------------+ | ON | +-------------------+ 1 row in set (0.00 sec)
现在,重新启动MySQL。查询如下:
mysql> restart;
重新启动服务器后,连接会丢失一段时间。如果您使用任何查询,您将收到以下错误消息:
mysql> select @@event_scheduler; ERROR 2013 (HY000): Lost connection to MySQL server during query
一段时间后,如果再次使用select语句使用系统变量@@ event_scheduler,则输出将相同,即ON。查询如下:
mysql> select @@event_scheduler; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 8 Current database: *** NONE *** +-------------------+ | @@event_scheduler | +-------------------+ | ON | +-------------------+ 1 row in set (0.04 sec)
或者,您可以在my.cnf文件或my.ini文件中将event_scheduler设置为ON。声明如下:
[mysqld] event_scheduler = ON;
现在,您的event_scheduler已启用。无论您的服务器是否重新启动,它都将始终处于打开状态。