msql資料庫分割槽

2021-08-01 19:42:46 字數 895 閱讀 3284

一:為什麼要進行分割槽(partition)

需求:大資料。解決辦法:分而治之。將大表和大資料分為更小的操作單元。在mysql中允許將表、索引和索引編排分為索引編排表細分為更小的單元。分割槽後,每個分割槽有自己單獨的名稱。對於dba來講,這些分割槽可以統一管理,也可以分開管理。但是對於應用程式來講,分割槽的表和沒有分割槽的表示是一樣的。換句話說分割槽對於應用程式是透明的,只不過是資料庫對於資料的重新整理。

二:分割槽的作用

(1)提公升效能

沒有分割槽前,資料每次在查詢和檢索總是面向的是整個資料庫和表。分割槽之後,mysql針對每個分割槽生成特定的資料檔案與索引檔案。每次只會檢索特定的部分資料,因此可以更好的來執行和維護資料庫。究其原因還是因為在分割槽之後表指派到不同的物理驅動上,這樣可以同時訪問多個分割槽時減少物理i/o爭用。

(2)易於管理

對於一些無用的冗餘的歷史資料,可以分割槽之後直接刪除相應的分割槽。操作起來更加簡便,因為執行數以萬計的資料遠比直接刪除檔案來的困難的多、時間也更加的長。

(3)容錯

分割槽之後相比分割槽之前,一張表從之前乙個檔案分為現在三個檔案。分割槽之後即使乙個檔案出現破壞,也不壞影響其他資料。

三:常用的分割槽方法

range分割槽

list分割槽

hash分割槽

key分割槽

range分割槽

俗稱:範圍分割槽。根據表的字段值,依據給定某段連續的區間來分割槽。

list分割槽

俗稱:列表分割槽。其實list分割槽和range分割槽應該說都是一樣的,不同的是range分割槽在分割槽時的依據是一段連續的區間,而list分割槽針對的分割槽時一組分布的雜湊值。

hash分割槽

雜湊分割槽主要是依據表的某個字段以及指定分割槽的數量。

key分割槽

和hash分割槽類似,mysql預設使用表的主鍵或唯一鍵進行區分

資料庫MSQL語句

1丶資料庫操作 建立資料庫create xd 資料庫名 檢視資料庫show xd 更改資料庫資訊 alter xd 資料庫名 character set 字符集 刪除資料庫drop xd 資料庫名 drop xd if exists 資料庫名 進入乙個資料庫use 資料庫名 檢視當前資料庫selec...

MSQL資料庫檢索優化

mysql的優化是非常重要的.其他最常用也最需要優化的就是limit.mysql的limit給分頁帶來了極大的方便,但資料量一大的時候,limit的效能就急劇下降.同樣是取10條資料 select from yanxue8 visit limit 10000,10 和 select from yan...

資料庫分割槽

分割槽 就是把一張表的資料分成n個區塊 資料分割槽是一種物理資料庫的設計技術,它的目的是為了在特定的sql操作中減少資料讀寫的總量以縮減響應時間。分割槽並不是生成新的資料表,而是將表的資料均衡分攤到不同的硬碟,系統或是不同伺服器儲存介子中,實際上還是一張表。特性 分割槽能夠提高併發性和並行性 從而增...