MySQL子分區一例

這是現實中的一個例子,但是我不推薦使用MySQL分區用於生產

CREATE TABLE `t_log` (
  `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `VERSON` int(11) NOT NULL DEFAULT 0 COMMENT ' 版本號',
  `ACTIONS` varchar(100) DEFAULT NULL COMMENT ' 操作記錄',
  `ADMINID` int(11) DEFAULT 1 COMMENT '管理員ID',
  `IP` varchar(20) DEFAULT '1' COMMENT ' 登錄Ip',
  `CDATE` datetime NOT NULL COMMENT '添加時間',
  `UDATE` datetime NOT NULL COMMENT '修改時間',
  PRIMARY KEY (`ID`,`CDATE`),
  KEY `ADMINID` (`ADMINID`) USING BTREE
) ENGINE=InnoDB   DEFAULT CHARSET=utf8 COMMENT='日誌表'
Time: 0.024s

ALTER TABLE `blog`.`t_log` PARTITION BY RANGE (year(`CDATE`))
PARTITIONS 1
SUBPARTITION BY HASH (to_days(`CDATE`))
SUBPARTITIONS 4
(PARTITION `p0` VALUES LESS THAN (2020)  
(SUBPARTITION `s200`  ,
SUBPARTITION `s201`  ,
SUBPARTITION `s202`  ,
SUBPARTITION `s203`  ))
Time: 0.057s

alter table t_log
ADD PARTITION (PARTITION `p1` VALUES LESS THAN (2021)(
SUBPARTITION `s210` ENGINE = InnoDB,
  SUBPARTITION `s211` ENGINE = InnoDB,
  SUBPARTITION `s212` ENGINE = InnoDB,
  SUBPARTITION `s213` ENGINE = InnoDB
))
Time: 0.054s


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章