mysql資料庫是一款開源的資料庫,支援多種儲存引擎的選擇,比如目前最常用的儲存引擎有:myisam,innodb,memory等。
myisam是mysql的預設儲存引擎,它支援b-tree/fulltext/r-tree索引型別,並且myisam的鎖級別是表鎖,表鎖的開銷小,加鎖快;鎖粒度大,發生鎖衝突的概率較高,併發度低;表鎖適合查詢。myisam引擎不支援事務性,也不支援外來鍵。
innodb儲存引擎最大的亮點就是支援事務性,支援回滾。它支援hash/b-tree索引型別。innodb的鎖級別是行鎖,行鎖在鎖定上帶來的消耗大於表鎖,但是在系統併發訪問量較高時,innodb整體效能遠高於myisam。innodb的索引不僅快取索引本身,也快取資料,所以innodb需要更大的記憶體。
memory儲存引擎是乙個記憶體級的儲存引擎,它將所有資料都儲存在記憶體中,所以它能夠儲存的資料量是比較小的。而因為記憶體的特性,memory儲存引擎對於資料的一致性支援教差。memory的鎖級別和myisam一樣,是表鎖;並且不支援事務性。
資料庫的選擇,資料庫儲存引擎的選擇,以及資料庫的優化,就像是一門藝術,它沒有好與壞之分,只有適合與不適合。乙個專案需要考慮的因素很多,如何去權衡幾個因素之間的權重,如何找到乙個最優解,真的需要長時間的經驗積累,資料庫的學習之路漫漫,堅持,再堅持!
mysql儲存引擎選擇
常用的儲存引擎為myisam和innodb,其它引擎有ndb cluster merge memory等等。myisam是mysql的預設搜尋引擎,其中的每乙個表都被存放為三個檔案 frm表結構資訊 myd資料檔案 myi索引檔案。myisam支援b tree索引 r tree索引和full tex...
MySQL儲存引擎 選擇
mysql有多種儲存引擎 myisam innodb merge memory heap bdb berkeleydb example federated archive csv blackhole。mysql支援數個儲存引擎作為對不同表的型別的處理器。mysql儲存引擎包括處理事務安全表的引擎和處...
MySql儲存引擎選擇
1.儲存引擎簡介 外掛程式式儲存引擎是 mysql 資料庫最重要的特性之一,使用者可以根據應用的需要選擇如何儲存和索引資料 是否使用事務等。mysql 預設支援多種儲存引擎,以適用於不同領域的資料庫應用需要,使用者可以通過選擇使用不同的儲存引擎提高應用的效率,提供靈活的儲存,使用者甚至可以按照自己的...