MySQL分區在MySQL數據庫中的重要性不言而喻,那麼,究竟什麼是MySQL分區呢?MySQL分區有哪兩種方式呢?
什麼是數據庫分區?數據庫分區是一種物理數據庫設計技術,DBA和數據庫建模人員對其相當熟悉。雖然分區技術可以實現很多效果,但其主要目的是為了在特定的SQL操作中減少數據讀寫的總量以縮減響應時間。 MySQL分區主要有兩種形式://這裡一定要注意行和列的概念row是行,column是列)
水平分區Horizontal Partitioning)
這種MySQL分區形式分區是對表的行進行分區,通過這樣的方式不同分組裡面的物理列分割的數據集得以組合,從而進行個體分割單分區)或集體分割1個或多個分區)。所有在表中定義的列在每個數據集中都能找到,所以表的特性依然得以保持。
舉個簡單例子:
一個包含十年發票記錄的表可以被分區為十個不同的分區,每個分區包含的是其中一年的記錄。朋奕注:這裡具體使用的分區方式我們後面再說,可以先說一點,一定要通過某個屬性列來分割,譬如這裡使用的列就是年份)
垂直分區Vertical Partitioning)
這種MySQL分區分區方式一般來說是通過對表的垂直劃分來減少目標表的寬度,使某些特定的列被劃分到特定的分區,每個分區都包含了其中的列所對應的行。
舉個簡單例子:
一個包含了大text和BLOB列的表,這些text和BLOB列又不經常被訪問,這時候就要把這些不經常使用的text和BLOB了劃分到另一個分區,在保證它們數據相關性的同時還能提高訪問速度。
在數據庫供應商開始在他們的數據庫引擎中建立分區主要是水平分區)時,DBA和建模者必須設計好表的物理分區結構,不要保存冗余的數據不同表中同時都包 含父表中的數據)或相互聯結成一個邏輯父對象通常是視圖)。這種做法會使水平分區的大部分功能失效,有時候也會對垂直分區產生影響。
教您如何修改MySQL環境變量
定義MySQL事務的例子
創建MySQL存儲過程示例
MYSQL IFNULL函數的使用
MySQL日期的相關函數介紹