Вы включили планировщик событий?
Вам нужна запись в my.cnf
в разделе [mysqld]
, говорящая:
event_scheduler=on
Если событие как-то не удается, mysql имеет плохоеподдержка диагностики, но вы увидите некоторые записи журнала в файле журнала mysql (который обычно находится в каталоге данных mysql, например / var / lib / mysql или в системных журналах / var / log)
В документации говорится, что нет способа передать аргумент в и из процедуры, вызванной событием, поэтому ваше первое событие, переданное в @firstOutParam
, вероятно, не будет работать.Чтобы обойти это, вам нужно будет динамически построить SQL в виде текста и выполнить его.
SET @sql = CONCAT("CREATE EVENT myevent1 ON SCHEDULE AT ", @endTime, " DO CALL
`database`.`SupportingProcedure`(",@firstOutParam,")");
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;