MYSQL 表分割槽的 3 方法

2021-09-06 18:32:04 字數 1183 閱讀 6541

背景知識:

表分割槽是把邏輯上同一範圍的資料儲存到同乙個檔案中,就和超市一樣,把同類商品放在同乙個區域,把不同的商品放在不同的地方。不同的是超市中

是根據用途分類的,表分割槽是根據它的取值區間來分的。

分割槽有什麼用?

1、分割槽後可以用多個檔案來儲存表中的資料,而這幾個檔案可以位於不同的硬碟上,這樣就可以同時利用多個硬碟的io能力。

2、分割槽後鎖就會更靈活,如果一次要鎖定大量的資料行,而表沒有分割槽,mysql 可能會為了減小在鎖上的開銷,會把行鎖公升

級為表鎖,如果表分割槽了,要訪問的資料行只在表的一兩個分割槽中,這樣就可以只鎖定這兩個分割槽。而不要鎖定整個表。

3、由於目前mysql乙個資料庫儲存在乙個資料夾中,好像資料夾不可以跨硬碟,所以第 1 點說的好處就沒有了,不過在別的

資料庫如sql server中這個好處是有的。

方法 1、

partition by range (column_name) partition pt... values less than方法

create table t1(x int ,y int)

partition by range (x)(

partition p0 values less than(10),

partition p3 values less than(100),

partition p5 values less than maxvalue);

就這樣給t1 根據x的取值分成了三個區

方法 2

這裡是方法1、方法2 建立的檔案。

MySQL表分割槽(3)雜湊分割槽 hash

雜湊分割槽。雜湊分割槽主要是依據表的某個字段以及指定分割槽的數量。要使用hash分割槽來分割乙個表,要在create table 語句上新增乙個 partition by hash expr 子句,其中 expr 是乙個返回乙個整數的表示式。它可以僅僅是字段型別為mysql整型的一列的名字。此外,你...

java筆記3 方法

方法是一段可以被重複呼叫的 塊 public static 返回值型別 方法名稱 引數列表 對於返回值型別有兩種 void 表示此方法沒有返回值 資料型別 基本型別和引用型別 public class demo1 public static void printinfo 方法名稱的命名要求 第乙個單...

mysql表檢視方法 檢視mysql表的方法

安裝好mysql後,配製檔案應該在 usr local mysql share mysql目錄中,配製檔案有幾個,有my huge.cnf my medium.cnf my large.cnf my small.cnf,不同的流量的 和不同配製的伺服器環境,當然需要有不同的配製檔案了。一般的情況下,...