MySQL事件调度器不工作,但一切都已设置
我的MySQL事件永远不想执行。MySQL事件调度器不工作,但一切都已设置,mysql,events,Mysql,Events,我的MySQL事件永远不想执行。 我使用最新的5.6.10版本,但问题也出现在5.5版本中。 我有一个主-多个从配置。我想在主机上运行事件。 在my.ini中,我已经设置了 事件调度程序=打开 2、检查此项: show variables like '%event_scheduler%'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | event_scheduler |
我使用最新的5.6.10版本,但问题也出现在5.5版本中。
我有一个主-多个从配置。我想在主机上运行事件。
show variables like '%event_scheduler%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| event_scheduler | ON |
+-----------------+-------+
show processlist\G
Id: 1
User: event_scheduler
Host: localhost
db: NULL
Command: Daemon
Time: 720
State: Waiting on empty queue
Info: NULL
...
3,接下来我在主服务器上有一个重复事件。这是我永远不想执行的。我还试着把日期改成不同的时间
CREATE EVENT IF NOT EXISTS dbname.event_xyz
ON SCHEDULE EVERY 1 DAY STARTS '2013-02-05 00:15:00'
ON COMPLETION PRESERVE
DISABLE ON SLAVE
COMMENT 'Collect data from ...'
DO CALL dbname._procedurename;
直接调用“\u procedurename”过程没有错误
4、事件和过程的创建者是“根”
5、系统的输出
show events\G
Db: dbname
Name: event_xyz
Definer: root@localhost
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2013-02-05 00:15:00
Ends: NULL
Status: SLAVESIDE_DISABLED
Originator: 1
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: utf8_general_ci
6,重新启动主服务器我在
masterservername.err:
...
Event Scheduler: Purging the queue. 0 events
...
Event Scheduler: Loaded 0 events
...
和
show processlist\G
显示事件调度程序
State: Waiting on empty queue !
所以,我的问题是为什么不在主服务器上运行该事件为什么事件计划程序不知道有关先前定义的事件的任何信息
我遗漏了什么吗?也许这是一个bug 解决的办法是移除
DISABLE ON SLAVE
事件声明命令中的参数
在此之后,事件状态更改为“已启用”状态,并由主服务器上的事件计划程序触发
在从属服务器上,此事件的状态以“从属服务器禁用”状态复制
那么,在创建事件语法中存在“DISABLE ON SLAVE”参数的目的是什么呢?也许这是一个bug
解决的办法是移除
DISABLE ON SLAVE
事件声明命令中的参数
在此之后,事件状态更改为“已启用”状态,并由主服务器上的事件计划程序触发
在从属服务器上,此事件的状态以“从属服务器禁用”状态复制
那么,在创建事件语法中存在“DISABLE ON SLAVE”参数的目的是什么呢?这可能是bug,在5.6.14中修复了这可能是bug,在5.6.14中修复了您能测试事件的主体吗?程序可能有问题。尝试执行INSERT或任何其他语句以确保事件正常工作。直接调用事件正文时没有错误。错误日志中是否有错误?否。日志中没有错误。是否可以测试事件正文?程序可能有问题。尝试执行INSERT或任何其他语句以确保事件正常工作。直接调用事件正文时没有错误。错误日志中是否有错误?否。日志中没有错误。