即使重新启动MySQL,如何设置全局事件_scheduler=ON?

即使重新启动MySQL,如何设置全局事件_scheduler=ON?,mysql,events,scheduler,Mysql,Events,Scheduler,我想将事件调度程序全局设置为开启,即使MySQL重新启动;我怎样才能做到这一点 SET GLOBAL event_scheduler = ON; 一种方法是,如果有可能重新启动mysql,您可以设置系统变量并使用这些变量 这是您可以设置的链接 event_scheduler=ON 在my.ini或my.cnf文件中,重新启动服务器,使设置生效 一旦设置了event\u调度程序将始终保持打开状态,无论您的服务器是否重新启动。在我们的Windows server 2012系统上,这些或任何其他解

我想将
事件调度程序
全局设置为
开启
,即使MySQL重新启动;我怎样才能做到这一点

SET GLOBAL event_scheduler = ON;

一种方法是,如果有可能重新启动mysql,您可以设置系统变量并使用这些变量

这是您可以设置的链接

event_scheduler=ON
my.ini
my.cnf
文件中,重新启动服务器,使设置生效


一旦设置了
event\u调度程序
将始终保持
打开状态
,无论您的服务器是否重新启动。

在我们的Windows server 2012系统上,这些或任何其他解决方案都不起作用。然后我查看了启动的注册表项:

“C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe”--默认文件=“C:\ProgramData\MySQL\MySQL Server 5.6\my.ini”MySQL56

邪恶的诀窍是
ProgramData
。它不是
程序文件
。查看程序文件,你会看到一个
my default.ini
文件,放在那里只是为了把你搞砸


诀窍是在注册表中找到我的路径:
HKEY\u LOCAL\u MACHINE\SYSTEM\Services\MySQL56

打开您的/etc/mysql/my.ini文件并添加:

event_scheduler = on
[mysqld]部分下

(在mysql 5.5.35-0+喘息1-Debian下测试)

在文件末尾添加此行:

event_scheduler=ON
然后重新启动,并检查守护进程是否在重新启动后启动:

登录mysql bash:

mysql -u <user> -p

现在,您应该可以通过一种方式在列表中看到事件调度程序守护程序-您可以设置系统变量,并在需要时使用这些变量()。“如果更改全局系统变量,则会记住该值并用于新连接,直到服务器重新启动。(要使全局系统变量设置永久化,应在选项文件中进行设置)“在某些linux发行版中,该文件位于/etc/my.cnfw下,根据我的需要,使用MariaDB,将该行包含在[mysqld]中根据建议的部分。/usr/local/etc/mysql对于从RHSCL免费下载MariaDB,配置文件将位于/etc/opt/rh/rh-mariadb103/my.cnf(将103更改为您的版本)中。请注意,[mysqld]是必需的,并且不与[mysql]一起工作,只有[mysqld]。在RaspbianOn我的案例(Ubuntu 14.04.4 LTS)中测试,将它添加到
/etc/mysql/my.cnf
中就成功了,而将它添加到
/etc/mysql/my.ini
中却什么也没做。在装有mysql 5.7的Windows计算机上,
事件调度程序=On
对Mem起作用确保您将设置添加到正确的部分-它应该在
[mysqld]下
。否则服务器将无法启动…当然,您必须将其放入正确的文件中。我有两个文件,一个是
D:\MariaDB\my.ini
,另一个是
D:\MariaDB\data\my.ini
。不确定为什么,但在安装过程中使用了后一个文件。在Amazon Linux AMI映像上,它通过修改/et来工作c/my.cfg文件。谢谢!这在ubuntu 16.04上有效,我无法编辑my.cnf文件。
mysql -u <user> -p
SHOW PROCESSLIST;