mysql에서 파티션을 생성하는 두 가지 방법 소개(코드 예제)

不言
풀어 주다: 2019-02-15 14:43:00
앞으로
3622명이 탐색했습니다.

이 글은 MySQL에서 파티션을 생성하는 두 가지 방법(코드 예제)을 소개합니다. 이는 특정 참조 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

#list 파티션--키 값은 사용자 정의 목록을 통해 쓸 파티션을 결정합니다.​

장점: int, time, varchar 및 기타 값 지원 ​​​​

단점: 해당 데이터의 슬레이브를 직접 작성해야 합니다(어떤 파티션이 작성되거나 쿼리되는지). 즉, 파티션 조건이 다음과 같은 경우 나중에 수정하면 다시 구성해야 합니다.

CREATE TABLE t_test (
    unid INT auto_increment , 
    uuid VARCHAR(36),
    cdate datetime,
    type int,
        text varchar(30),
        PRIMARY KEY(unid,type)
)
PARTITION BY LIST COLUMNS(type) (        #这里以type字段来分区,list分区中,这个字段可以为int整形或者某个值
    PARTITION pRegion_1  VALUES IN (1),     #这里的意思是,当type=1时,数据会写入到pRegion_1分区中
    PARTITION pRegion_2  VALUES IN (2),     #同上
    PARTITION pRegion_3  VALUES IN (3),
    PARTITION pRegion_4  VALUES IN (4)
);
로그인 후 복사

#hash 파티션--해시 알고리즘을 통해 키 값을 계산한 후 해당 파티션에 자동으로 기록됩니다.

장점: 해당 데이터를 직접 작성할 필요가 없습니다(어떤 파티션이 작성되거나 쿼리되는지)

단점: 정수 정수만 지원

CREATE TABLE t_test (
    unid INT auto_increment ,
    uuid VARCHAR(36),
    cdate datetime,
    type int,
    text varchar(30),
    PRIMARY KEY(unid,type)       #复合主键,因为后面要用type字段来分区
)
PARTITION BY HASH ( type )   #这里以type字段来分区,type必须是主键或者是复合主键包含的字段,hash分区的方式必须该字段为int
PARTITIONS 10;              #这里设定的是分区数为10,数据会通过type字段经过hash算法后,自动归属到10个分区中的某个分区中
로그인 후 복사

위 내용은 mysql에서 파티션을 생성하는 두 가지 방법 소개(코드 예제)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!