MySQL 分割槽key MySQL KEY分割槽

2021-10-20 22:16:48 字數 1415 閱讀 1691

介紹

key分割槽和hash分割槽相似,但是key分割槽支援除text和blob之外的所有資料型別的分割槽,而hash分割槽只支援數字分割槽,key分割槽不允許使用使用者自定義的表示式進行分割槽,key分割槽使用系統提供的hash函式進行分割槽。當表中存在主鍵或者唯一鍵時,如果建立key分割槽時沒有指定字段系統缺省會首選主鍵列作為分割槽字列,如果不存在主鍵列會選擇非空唯一鍵列作為分割槽列,注意唯一列作為分割槽列唯一列不能為null。

一、常規key

1.建立分割槽

create tabletb_key (

idint,var char(32)

partitionby key(var)

partitions10;

selectpartition_name,partition_method,partition_expression,partition_description,table_rows,subpartition_name,subpartition_method,subpartition_expressionfrom information_schema.partitions where table_schema=schema() and table_name='tb_key';

insert into tb_key() values(1,'星期一'),(2,'1998-10-19'),(3,'new'),(4,'非常好'),(5,'5');

二、linear key

1.建立分割槽

三、分割槽管理

key分割槽管理和hash分割槽管理是一樣的,只能刪除和增加分割槽,這裡不再做詳細介紹。

1.刪除2個分割槽

alter table tb_key coalesce partition 2;

2.增加三個分割槽

alter table tb_key add partition partitions 3;

四、移除表的分割槽

alter table tablename

remove partitioning ;

注意:使用remove移除分割槽是僅僅移除分割槽的定義,並不會刪除資料和drop partition不一樣,後者會連同資料一起刪除

分割槽系列文章:

總結key分割槽和hash分割槽類似,在處理大量資料記錄時能有效的分散資料熱點。

備註:《歡迎交流討論》

mysql分割槽邊 mysql分割槽

檢視資料庫版本是否支援分割槽 分割槽的四種型別 range分割槽 範圍分割槽,根據某個欄位的值來進行分割槽,某個連續的區間來進行區分 建立表時分區create table teacher id varchar 20 not null name varchar 20 age varchar 20 bi...

mysql 分割槽管理 mysql分割槽管理

一 如何管理range和list分割槽 以該分割槽表為例 create table members id int,fname varchar 25 lname varchar 25 dob date partition by range year dob partition p0 values le...

MySQL儲存分割槽重複 mysql 分割槽

mysql分割槽 前提條件 mysql版本 5.1以上 檢視是否裝載分割槽外掛程式 show plugins name status type library license binlog active storage engine null gpl partition active storage...