Могу ли я установить расписание событий MySQL с помощью phpMyAdmin? - PullRequest
13 голосов
/ 08 июля 2011

Я хочу увеличивать поле в первую минуту каждого дня, а затем, как только оно достигает определенного значения, установить значение 1. Я хотел бы сделать это непосредственно в MySQL, но предпочтительно через phpMyAdmin.

Я знаю о планировщике событий , и поэтому я ищу способ использовать его и управлять им через phpMyAdmin. Возможно ли это?

Ответы [ 3 ]

28 голосов
/ 08 июля 2011

Это .. Просто введите соответствующий CREATE EVENT SQL из поля SQL.

Однако: на вашем сервере MySQL должен быть включен планировщик событий И есть права EVENT для пользователя базы данных.

Вызов SELECT @@event_scheduler; сообщит вам, если планировщик доступен и включен.

Чтобы включить планировщик событий, если он отключен, попробуйте позвонить SET GLOBAL event_scheduler := 1; Для успешного выполнения этого вам необходима привилегия SUPER.

19 голосов
/ 16 ноября 2012

Выберите браузер запросов в phpmyadmin, запустите запрос к планировщику событий ON

SET GLOBAL event_scheduler = ON;

Это может сделать только пользователь с супер привилегиями.Чтобы получить большую привилегию для пользователя с помощью

GRANT EVENT ON myschema.* TO jon@ghidora;

Проверьте статус события_Sheduler ВКЛ или ВЫКЛ с помощью

SELECT @@event_scheduler;

Если статус ВКЛ, переходите к созданию события

CREATE EVENT e_store_ts
    ON SCHEDULE
      EVERY 10 SECOND
    DO
      INSERT INTO myschema.mytable VALUES (UNIX_TIMESTAMP());

Комуувидеть события, которые создали

SHOW EVENTS;
3 голосов
/ 20 июля 2012

Если вы делаете это на Amazon RDS, вам нужно отредактировать группу параметров, добавив EVENT_SCHEDULER = ON. Один из простых способов сделать это - через бесплатный аккаунт Rightscale.

...