對於MySql分割槽的理解 未完待續)

2021-08-06 01:19:45 字數 464 閱讀 1906

注意點(摘自《高新能mysql》)

1.mysql實現分割槽表的方式是對底層表的封裝,意味著索引也是按照分割槽表定義的,而沒有全域性索引

2.null值會使分割槽過濾無效

第乙個分割槽是特殊分割槽所有值為null或者非法值的時候,記錄都會被存放到第乙個分割槽,實際上mysql會檢查倆個區,第乙個分割槽和相應的字段對應分割槽

3.避免建立和分割槽列不匹配的索引(不明白)

網上較好的解釋:索引列和分割槽列不匹配是指你的sql語句where條件的包含帶有索引的列但不包含分割槽列的情況,這時候不管分割槽列有沒有索引都不會進行分割槽過濾

4.選擇分割槽的成本很高

5.所有的分割槽表必須使用相同的儲存引擎

6.查詢優化,where條件帶入分割槽列,有時看似多餘也要帶上,注意:mysql只能在使用分割槽函式的列本身進行比較時才能過濾分割槽,而不能根據表示式的值去過濾分割槽(在建立分割槽時可以用表示式,在查詢時只能根據列來過濾分割槽)

對於MySQL的MVCC機制的理解

mvcc 多版本併發控制 mvcc只能在可重複讀和讀已提交兩個隔離級別下工作,和其他隔離級別是不相容的,因為讀未提交總是讀取最新的資料,而可序列化對所有資料都會加鎖。mvcc主要作用 解決了什麼問題 早期資料庫不論讀取還是寫入,都用鎖來實現。但是鎖會帶來效能的問題,mvcc就是mysql對於讀的一種...

我個人對於物件導向程式開發的理解(未完待續)

2013年5月6日 本人從事delphi winform開發有段時間了,簡單說說物件導向在實際開發中的應用。我的這些感想只是一些比較初級,比較凌亂,但是都是很有用的想法,畢竟都是公司老前輩們的經驗。一 建立general模組 在開發過程中,我們習慣把一些可能經常用到,並且各種設定都相似的一些窗體或f...

對於STL的理解

stl standard template library stl是一些 容器 的集合,這些 容器 有list,vector,set,map等,stl也是演算法和其他一些元件的集合。這裡的 容器 和演算法的集合指的是世界上很多聰明人很多年的傑作。stl的目的是標準化元件,這樣就不用重新開發,可以使用...