Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

내블로그

테이블 파티셔닝 본문

DataBase/MySQL&MariaDB

테이블 파티셔닝

잡동사니보관 2016. 11. 28. 17:33

1. CREATE TABLE

 CREATE TABLE `data_table` (

    `idnr` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'idnr',

    `send_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,

    PRIMARY KEY (`idnr`, `send_time`),

)

COLLATE='utf8_general_ci'

ENGINE=InnoDB DEFAULT CHARSET=utf8

PARTITION BY RANGE (YEAR(`send_time`)*100+MONTH(`send_time`))

(

    PARTITION p201611 VALUES LESS THAN (201611) ENGINE = InnoDB,

    PARTITION p201612 VALUES LESS THAN (201612) ENGINE = InnoDB

);

2. ALTER TABLE ADD PARTITION

ALTER TABLE data_table ADD PARTITION(PARTITION p201701 VALUES LESS THAN (201701));

3. ALTER TABLE DROP PARTITION

ALTER TABLE data_table DROP PARTITION p201611;

4. 파티션 확인

EXPLAIN PARTITIONS

SELECT TABLE_SCHEMA, TABLE_NAME, PARTITION_NAME, PARTITION_ORDINAL_POSITION, TABLE_ROWS

FROM INFORMATION_SCHEMA.PARTITIONS

WHERE TABLE_NAME =  'data_table ';


'DataBase > MySQL&MariaDB' 카테고리의 다른 글

log-bin 파일 정리  (0) 2017.07.19
테이블 크기 확인  (0) 2017.04.12
Dynamic Columns(JSON)  (0) 2016.11.18
CentOS 6 + MariaDB 10 설치  (0) 2016.10.18
CentOS 6.6 + mysql 5.5  (0) 2015.03.30