mysql数据库任务计划_navicat下mysql任务计划

对于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

CALL pro_event_emulate_statistics()

;

DROP PROCEDURE IF EXISTS `pro_event_emulate_statistics`;

CREATE DEFINER = `root`@`%` PROCEDURE `pro_event_emulate_statistics`()

BEGIN

自定义

END;

3.测试时需要注意服务器时间和本地时间是否一致,以免测试时引起误差

通过设定全局变量event_scheduler 的值即可动态的控制事件调度器是否启用。

查看是否event_scheduler开启 mysql> SHOW VARIABLES LIKE '%event%';

设置开启 mysql> SET GLOBAL event_scheduler=ON;

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值