mysql 使用的引擎:
1) MyIsam 不支持事務,適用於選擇密集型,插入密集型,mysql 默認的引擎
2) innodb 使用於更新密集型,支持事務,自動災難恢復,行級鎖,外鍵約束
3)memory 出發點是速度 採用的邏輯存儲介質是內存
4)merge 一組 myisam 表的組合
mysq 索引使用的數據結構:B+樹
索引:用於提高數據訪問速度的數據庫對象。
優點:1)索引可以避免全表掃描;
2)對於非聚集索引,有些查詢甚至可以不訪問數據項;
3)聚集索引可以避免數據插入操作集中於表的最後一個數據頁;
4)一些情況下,索引還可以避免排序。
雖然索引可以提高查詢速度,但是他們也會導致數據庫更新數據的性能下降,因爲大部分數據更新時需要同時更新索引。
聚集索引:數據按索引順序存儲,葉子節點存儲真實的數據行,不再有另外單獨的數據
頁。在一張表上只能創建一個聚集索引,因爲真實數據的物理順序只能有 1 種,若一張表沒
有聚集索引,則他被稱爲堆集,這樣表的數據行無特定的順序,所有新行將被添加到表的末
尾。
非聚集索引與聚集索引的區別:
1)葉子節點並非數據節點
2)葉子節點爲每一個真正的數據行存儲一個“鍵-指針”對
3)葉子節點中還存儲了一個指針偏移量,根據頁指針及指針偏移可以定位到具體的數
據行。
4)在除葉節點外的其他索引節點,存儲的是類似內容,只不過是指向下一級索引頁。
類加載