最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL定時(shí)任務(wù),清理表數(shù)據(jù)方式

 更新時(shí)間:2022年11月16日 11:44:16   作者:lonecloud  
這篇文章主要介紹了MySQL定時(shí)任務(wù),清理表數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

MySQL定時(shí)清理表數(shù)據(jù)

針對(duì)一些每天都會(huì)產(chǎn)生大量數(shù)據(jù)的表,比如說(shuō)報(bào)警、日志表等,數(shù)據(jù)量太大占用了較多的空間,可以選擇定時(shí)清理這些表,只保留一段時(shí)間內(nèi)的數(shù)據(jù)

對(duì)某個(gè)表只保留一個(gè)月內(nèi)的數(shù)據(jù)

查看是否開啟MySQL定時(shí)任務(wù)

# 顯示為ON則已開啟
SHOW VARIABLES LIKE 'event_scheduler';

顯示為ON表示已經(jīng)開啟

若未開啟,可以手動(dòng)開啟

在my.cnf(windows下是my.ini)添加配置 event_scheduler=ON

添加完畢后,重啟MySQL服務(wù)即可

也可以通過(guò)語(yǔ)句方式開啟,但是這種方式只在當(dāng)前啟動(dòng)的實(shí)例有效,重啟MySQL服務(wù)后就會(huì)失效

set global event_scheduler=1;

創(chuàng)建存儲(chǔ)過(guò)程

CREATE PROCEDURE `del_data_count`(IN date_inter INT)
BEGIN
DELETE FROM alarminfo
WHERE
(TO_DAYS(NOW()) - TO_DAYS(alarmTime))>=date_inter; # 當(dāng)前系統(tǒng)時(shí)間減去表的時(shí)間字段名
END

創(chuàng)建事件

# 創(chuàng)建事件
CREATE EVENT `del_tbl_expired_data`
# 表示創(chuàng)建時(shí)間定時(shí)周期,以及開始時(shí)間,該處表示從明天1點(diǎn)從開始,每天執(zhí)行一次該任務(wù)
ON SCHEDULE EVERY '1' DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)
# 表示創(chuàng)建后并不開始生效
ON COMPLETION PRESERVE DISABLE
# 執(zhí)行存儲(chǔ)過(guò)程,刪除30天之前的數(shù)據(jù)
DO CALL del_data_count (30);

相關(guān)語(yǔ)句:

# 查看已有定時(shí)事件任務(wù)
SHOW EVENTS; 
# 開啟事件
alter event event_name on completion preserve enable;
# 關(guān)閉事件
alter event event_name on completion preserve disable;

MySQL定時(shí)自動(dòng)刪除數(shù)據(jù)表

描述

自MySQL5.1.6起,增加了一個(gè)非常有特色的功能–事件調(diào)度器(EventScheduler),可以用做定時(shí)執(zhí)行某些特定任務(wù)(例如:刪除記錄、對(duì)數(shù)據(jù)進(jìn)行匯總等等),來(lái)取代原先只能由操作系統(tǒng)的計(jì)劃任務(wù)來(lái)執(zhí)行的工作。

更值得一提的是MySQL的事件調(diào)度器可以精確到每秒鐘執(zhí)行一個(gè)任務(wù),而操作系統(tǒng)的計(jì)劃任務(wù)(如:Linux下的CRON或Windows下的任務(wù)計(jì)劃)只能精確到每分鐘執(zhí)行一次。

對(duì)于一些對(duì)數(shù)據(jù)實(shí)時(shí)性要求比較高的應(yīng)用(例如:股票、賠率、比分等)就非常適合。

開啟事件調(diào)度器

1、確認(rèn)是否開啟

SHOW VARIABLES LIKE 'event_scheduler';

2、開啟命令

SET GLOBAL event_scheduler = ON;

創(chuàng)建事件<創(chuàng)建后默認(rèn)開啟>

CREATE EVENT [IF NOT EXISTS] event_name ON SCHEDULE schedule
?[ON COMPLETION [NOT] PRESERVE] [ENABLE | DISABLE] [COMMENT 'comment']

?DO sql_statement;?

例如:

1.每分鐘(60S)清空一次記錄表

use database_name;
create event table_truncate on schedule every 60 second do truncate table operator_record_log;

2.每30天(2592000S)清空30天前的所有記錄,僅保留近30天數(shù)據(jù)

use database_name;
create event table_truncate on schedule every 2592000 second do delete from operator_record_log where create_date < DATE_SUB(CURDATE(),INTERVAL 30 DAY);

3.指定時(shí)間將表清空

use database_name;
create event table_truncate on schedule at timestamp '2022-01-01 00:00:00' do truncate table operator_record_log;

4.每天定時(shí)清空

use database_name;
create event table_truncate on schedule every 1 day starts '2022-01-01 00:00:00' do truncate table operator_record_log;

關(guān)閉事件

alter event event_name disable;

開啟事件

alter event event_name enable;

刪除事件

drop event if exists event_name;

查看事件

show events;

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

蒙阴县| 呼玛县| 秦皇岛市| 赞皇县| 阳信县| 阿拉善左旗| 什邡市| 浠水县| 江源县| 隆林| 库车县| 绵阳市| 漯河市| 高尔夫| 遂宁市| 浙江省| 大理市| 孙吴县| 临沧市| 仙居县| 舒兰市| 宁津县| 南江县| 拜城县| 桐乡市| 牟定县| 黔西| 余江县| 安塞县| 怀安县| 砀山县| 广安市| 安塞县| 沙雅县| 商南县| 图木舒克市| 诏安县| 盐亭县| 来宾市| 咸丰县| 民权县|