一.概念
分區:它是一種物理數據庫設計技術,分爲水平分區和垂直分區。
水平分區:對錶的行進行分區,表中的所有列都可以在每個分區找到,維持了表的屬性結構,水平分區一定要通過某個屬性列來分割。常見的比如年份,日期等。
垂直分區:把某些特定的列劃分到特定的分區,減少表的寬度,每個分區都保存了其中列所在的行。
二.作用
提升數據庫的性能和簡化數據管理。
在掃描操作中,mysql優化器只掃描保護數據的那個分區,以減少掃描範圍,獲得性能的提高。
分區技術使得數據管理變得簡單,刪除某個分區不會對另外的分區造成影響,分區有系統直接管理不用手工干預。
三.分區的方式
1.hash:根據某些列的hash值進行分區劃分。
2.range:按某個或某些列的範圍劃分,如年份
3.list:自定義某列的屬性值範圍,落在這些值內的行劃到一組
4.key:也是hash,不過使用系統的hash函數
四.查看是否支持分區
可以用 showvariables like '%partition%'; 命令查詢當前的mysql數據庫版本是否支持分區。
或者使用 show plugins命令