Loading...
MySQL 9.5 Reference Manual 9.5의 26.3 Partition Management의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
26.3.1 Management of RANGE and LIST Partitions
26.3.2 Management of HASH and KEY Partitions
26.3.3 Exchanging Partitions and Subpartitions with Tables
26.3.4 Maintenance of Partitions
26.3.5 Obtaining Information About Partitions
SQL 문을 사용하여 파티션된 테이블을 수정하는 방법에는 여러 가지가 있습니다. ALTER TABLE 문에 대한 파티션 확장을 사용하여 기존 파티션을 추가, 삭제, 재정의, 병합 또는 분할할 수 있습니다. 또한 파티션된 테이블 및 파티션에 대한 정보를 얻는 방법도 있습니다.
이러한 주제에 대해서는 이어지는 섹션에서 다룹니다.
RANGE 또는 LIST로 파티션된 테이블에서 파티션 관리에 대한 정보는 Section 26.3.1, “Management of RANGE and LIST Partitions”을 참조하십시오.
HASH 및 KEY 파티션 관리를 위한 논의는 Section 26.3.2, “Management of HASH and KEY Partitions”을 참조하십시오.
파티션된 테이블 및 파티션에 대한 정보를 얻기 위해 MySQL 9.5에서 제공되는 메커니즘에 대한 논의는 Section 26.3.5, “Obtaining Information About Partitions”을 참조하십시오.
파티션에 대해 유지 관리 작업을 수행하는 방법에 대한 논의는 Section 26.3.4, “Maintenance of Partitions”을 참조하십시오.
참고
파티션된 테이블의 모든 파티션은 동일한 개수의 서브파티션을 가져야 합니다. 테이블이 생성된 이후에는 서브파티셔닝을 변경할 수 없습니다.
테이블의 파티셔닝 스킴을 변경하려면, partition_options 옵션과 함께 ALTER TABLE 문만 사용하면 됩니다. 이 옵션은 파티션된 테이블을 생성할 때 CREATE TABLE과 함께 사용되는 것과 동일한 구문을 가지며, 항상 PARTITION BY 키워드로 시작합니다.
다음과 같은 CREATE TABLE 문을 사용하여 범위로 파티션된 테이블을 생성했다고 가정해 보겠습니다:
1CREATE TABLE trb3 (id INT, name VARCHAR(50), purchased DATE) 2 PARTITION BY RANGE( YEAR(purchased) ) ( 3 PARTITION p0 VALUES LESS THAN (1990), 4 PARTITION p1 VALUES LESS THAN (1995), 5 PARTITION p2 VALUES LESS THAN (2000), 6 PARTITION p3 VALUES LESS THAN (2005) 7 );
이 테이블을 재파티셔닝하여, id 컬럼 값을 키의 기준으로 사용하여 키 기준 두 개의 파티션으로 파티션하려면 다음 문을 사용할 수 있습니다:
1ALTER TABLE trb3 PARTITION BY KEY(id) PARTITIONS 2;
이는 테이블을 삭제한 다음 CREATE TABLE trb3 PARTITION BY KEY(id) PARTITIONS 2;를 사용하여 다시 생성하는 것과 테이블 구조에 미치는 효과가 동일합니다.
ALTER TABLE ... ENGINE [=] ...는 테이블에 사용되는 스토리지 엔진만 변경하며, 테이블의 파티셔닝 스킴은 그대로 유지합니다. 대상 스토리지 엔진이 파티셔닝을 지원하는 경우에만 이 문이 성공합니다.
테이블의 파티셔닝을 제거하려면 ALTER TABLE ... REMOVE PARTITIONING을 사용할 수 있습니다. Section 15.1.11, “ALTER TABLE Statement”을 참조하십시오.
주의
하나의 ALTER TABLE 문에서는 PARTITION BY, ADD PARTITION, DROP PARTITION, REORGANIZE PARTITION, COALESCE PARTITION 절 중 하나만 사용할 수 있습니다. 예를 들어, 파티션을 드롭하고 테이블의 나머지 파티션을 재구성하려면, 두 개의 별도 ALTER TABLE 문에서 이를 수행해야 합니다(먼저 DROP PARTITION을 사용하고, 그다음 두 번째 문에서 REORGANIZE PARTITION을 사용).
ALTER TABLE ... TRUNCATE PARTITION을 사용하여 하나 이상의 선택된 파티션으로부터 모든 행을 삭제할 수 있습니다.
26.2.7 How MySQL Partitioning Handles NULL
26.3.1 Management of RANGE and LIST Partitions