在mysql中使用事件调度器(计划任务),
语句写好了,运行也ok,可是却没有预期的结果。网上总结了非常多计划任务失效的原因。没有一种适合我。
在phpmyadmin中打开事件表,发现以下一串红色的提示:Connection for controluser as defined in your configuration failed.
把这句话粘贴在网上搜了一下,多是一些国外的站点,没看懂,然后翻译了一下这句话的意思就是:"由于在配置中定义的控制用户连接失败"。
二话不说,找到phpyadmin的配置文件config.sample.inc.php,,看到一个这样一段:
/* PMA User advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = $password;
原来这个用户才是高级用户,之前安装集成环境的时候没让输入用户,仅仅须要输入password,
于是我平时用的都是root帐号,殊不知这个帐号不是高级用户,然后果断把上面的pma换成了root。
回到事件那个表页面,红色提示消失了。我的计划任务開始工作了。。
。。
网上也有人总结了非常多常见的事件调度失效的原因。须要注意一下的是:
server关闭重新启动后计划任务失效,这样的的话在实际生产中是不同意的。
能够更改mysql的配置文件解决,在my.ini中加一条event_scheduler=ON