mysql 每日新增表分区
admin
2023-05-13 15:42:28
0

1.创建表和表分区

DROP TABLE zy.time_partition;

CREATE TABLE zy.time_partition

(TIME DATETIME NOT NULL )ENGINE=INNODB DEFAULT CHARSET=utf8

PARTITION BY RANGE(TO_DAYS(TIME))

(PARTITION p20171031 VALUES LESS THAN (TO_DAYS('2017-11-01')),

PARTITION p20171101 VALUES LESS THAN (TO_DAYS('2017-11-02'))

#DATA DIRECTORY '/data/2010-07-16'

#INDEX DIRECTORY '/data/2010-07-16'

);

2.创建每日新增表分区的存储过程

DROP PROCEDURE IF EXISTS zy.time_partition_procedure;

DELIMITER $$

CREATE PROCEDURE zy.time_partition_procedure()

BEGIN

select replace(b.partition_name,'p','') into @in_date from information_schema.PARTITIONS b where b.table_name ='time_partition' order by b.partition_ordinal_position desc limit 1;

set @max_date= DATE_ADD(@in_date,INTERVAL 1 DAY)+0 ;

set @date= DATE_ADD(@in_date,INTERVAL 1 DAY)+0 ;

SET @sql=CONCAT('ALTER TABLE zy.time_partition add PARTITION (PARTITION p',@date,' VALUES LESS THAN (TO_DAYS(''',to_days(@max_date1),''')));');

SELECT @sql;

PREPARE strsql FROM @sql;    #预执行sql

EXECUTE strsql;           #执行sql  

DEALLOCATE PREPARE strsql;   #释放sql

COMMIT;

END;

3.创建每天执行存储的事件

delimiter $$

create event zy.time_partition_event

on schedule every 1 day start date_add(curent()+1,interval 3 hour)

on completion preserve

enable

do

begin

call zy.time_partition_procedure();

end;


4.

#查看是否支持表分区

SHOW VARIABLES LIKE '%partition%'

#查询表的所有分区

SELECT * FROM information_schema.PARTITIONS a WHERE a.table_name IN ('time_partition')ORDER BY partition_ordinal_position DESC;

#新增表分区

ALTER TABLE zy.time_partition ADD PARTITION (PARTITION p20171102 VALUES LESS THAN (TO_DAYS('2017-11-02')));


#删除表的分区

ALTER TABLE zy.time_partition  DROP PARTITION p20171101;


相关内容

热门资讯

父亲70岁,从癌症手里“抠”时... 作者 | 祖晓谦秦叔特意请儿媳买了两把国光牌口琴,他不仅吹给自己听,也吹给家人听。那是2023年,他...
参加国宴的中国企业家,个个都有... 文 | 陶叔015月14日晚上,人民大会堂金色大厅举行国宴,两国领导人都发表了热情洋溢的讲话。电视画...
能繁母猪调控目标再下调,释放什... 【大河财立方 记者 徐兵】生猪行业新一轮产能调控正式落地。5月14日,农业农村部印发《生猪产能综合调...
赓续仲景千年文脉,南阳以“中医... 【大河财立方 记者 李雯雯】 红墙黛瓦承古韵,药香悠悠润宛城。5月13日,由中国新闻社河南分社、河南...
从国宴菜单一窥中美外交:清淡中... 中国为特朗普访华举行国宴图 路透/Evan Vucci当中美元首周四在北京出席一场盛大国宴时,菜单本...
赖清德公开呛台北没为台湾加分,... 海峡导报综合报道 民进党日前征召民代沈伯洋参选台北市长,党主席赖清德更称,台北市拥有全台最好、最多资...
外交部发言人就伊朗局势答记者问 问:据报道,特朗普总统访华期间,中美两国元首就中东局势等重大国际和地区问题交换了意见。请问双方是否谈...
强势介入调查座车追踪器疑云,检... 海峡导报综合报道 中国国民党副主席李乾龙日前遭媒体爆料,去年11月座车遭安装追踪器和收到恐吓信,事后...
没上专机的库克,提前到了北京 特朗普这次访华代表团的工商界人士中,英伟达创始人兼首席执行官(CEO)黄仁勋是在最后一刻登上了美国总...
女子总遇见“面熟”大姐一查竟是...   64岁的郑招莲说起这话时,语气里藏不住感慨与遗憾:“我经常在街上遇到我的姐姐,只是觉得面熟,但从...