Windows环境下对mysql远程数据库中的一张表的数据进行定时清理(用Navicat工具)

Windows环境下对mysql远程数据库中的一张表的数据进行定时清理(用Navicat工具)

参考链接:https://blog.csdn.net/tongluren381/article/details/106523796/
准备
mysql默认不开启定时任务执行,可以在Navicat中输入:

show variables like 'event_scheduler';

在这里插入图片描述
如果是ON,说明不用管,可以直接开始清理,如果是OFF,需要先打开。

方法一:执行set global event_scheduler=1;这种方法相当于一次性的,重启后失效,所以不推荐使用。

方法二:修改mysql的配置文件my.ini(Windows环境下)或者my.cnf(Linux环境下),在[mysqld]下增加一行:

event_scheduler=ON

之后重启mysql服务即可:service mysqld restart

开始清理

1.选中数据库,点击“事件”。
在这里插入图片描述
2.点击“新建事件”。
在这里插入图片描述
3.在定义中输入需要执行的sql语句。如删除创建时间在7天前的数据(比如今天6月29日,命令执行后会删除6月22日之前的数据,包括6月22日):

delete from table where Date(create_time) <= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY))

:此处的大小写要严格按照规范输入,我有一个报错就是因为后面的DATE没有严格大写。
4.在“计划”部分填写定时任务执行周期,并输入起始时间。
在这里插入图片描述
5.全部设置完成之后点击“保存”按钮。
在这里插入图片描述
6.设置该定时任务的时间名(自定义)。
在这里插入图片描述
:点击该事件,下方有选项可以直接设置该定时任务的状态(ENABLE开启;DISABLE关闭)
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/problemRecord/article/details/118337921
今日推荐