码迷,mamicode.com
首页 > 数据库 > 详细

navicat下mysql任务计划

时间:2015-05-18 21:18:18      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:

对于mysql的计划任务需要注意以下两点

1.否开启了此功能,SHOW VARIABLES LIKE ‘event_scheduler‘;

如果没有开启需要在my.ini or my.cnf 中的
[mysqld]
添加 event_scheduler=ON

2.如果客户端远程访问,确认是否授权用户:

ERROR 1044: Access denied for user: ‘@127.0.0.1 ‘ to database ‘mysql‘

说明你没有将权限下放到远端连接帐户上,由于mysql的安全性在不断的提高,权限设置默认是拒绝的,你必须自己开放权限。

在服务器上用mysql -h 192.168.0.1 -u root -p mysql命令登录mysql数据库

然后用grant命令下放权限。

GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY ‘root-password‘ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO root@127.0.0.1 IDENTIFIED BY ‘root-password‘ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO root@‘%‘ IDENTIFIED BY ‘root-password‘ WITH GRANT OPTION;

例如:

  GRANT   ALL   PRIVILEGES   ON   *.*   TO   root@‘%‘   identified   by  ‘123456‘  

注意:自己根据情况修改以上命令中的 “用户”“ip地址”“密码”。

完成此两步骤后可以使用客户端进行任务的创建了,这里仅列出创建每天执行一次的定时任务,当前时间+6小时后开启,直接上代码:

CREATE EVENT `EVENT_EMULATE_STATISTICS`
ON SCHEDULE EVERY 1 DAY STARTS CURRENT_TIMESTAMP + INTERVAL 6 HOUR
ON COMPLETION NOT PRESERVE
ENABLE
DO
CREATE TABLE IF NOT EXISTS mooc_sf_emulate_statistics_day
(
	id BIGINT NOT NULL,
	emulate_id BIGINT,
	learn_day_number INTEGER,
	create_time DATETIME,
	modify_time DATETIME,
	delete_flag BIT,
	PRIMARY KEY (id)
);


通过设定全局变量event_scheduler 的值即可动态的控制事件调度器是否启用。  
查看是否event_scheduler开启 mysql> SHOW VARIABLES LIKE ‘%event%‘; 
设置开启 mysql> SET GLOBAL event_scheduler=ON; 

详细功能参考开源中国博客:http://www.oschina.net/question/4873_20927


navicat下mysql任务计划

标签:

原文地址:http://my.oschina.net/u/1445731/blog/416403

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!