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; Query OK, 0 rows affected (0.00 sec)
서버를 다시 시작한 후 한동안 연결이 끊어졌습니다. 쿼리를 사용하면 다음 오류 메시지가 표시됩니다.
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가 켜져 있습니다. 서버가 다시 시작되는지 여부에 관계없이 항상 켜져 있습니다.