3、總結mysql常見的存儲引擎以及特點。

常見的存儲印象有MYISAM和INNODB:

圖1

注:上述圖片來自:https://docs.oracle.com/cd/E17952_01/mysql-5.5-en/storage-engines.html網(wǎng)站。

1????其中比較關鍵的是transactions,是一個重要的概念,有一個重要的特性原子性:一個事務是由多個小的步驟組合而成的,這些步驟要么統(tǒng)統(tǒng)全部完成,要么全不不做,必須作為一個整體出現(xiàn)。

2????鎖(locking granuarity),myisam只支持表級鎖(影響其并發(fā)),而innodb可以支持行級鎖。

3????MVCC,MVCC是很重要的特點,叫多版本并發(fā)控制機制,是為了解決并發(fā)的。

4????myisam不支持外鍵(forgin key support),innodb支持外鍵。

5????myisam只支持壓縮行格式才支持(有一定的條件),而innodb是支持所有的壓縮的。

6????myIsam每一個表都會對應獨立的三個文件:frm(表格式定義)、MYD(數(shù)據(jù)文件)、MYL(索引文件)

7????在innodb的數(shù)據(jù)庫中不是三個文件,默認情況下是兩個文件中(新版本中是兩個,舊版本需要增加innodb_file_per_table=ON),ftm和ibd文件(數(shù)據(jù)庫和索引放的文件)獨立的文件

其他存儲引擎

Performance_Schema:Performance_Schema數(shù)據(jù)庫使用。

BLACKHOLE:黑洞存儲引擎接受但不存儲數(shù)據(jù),檢索總是返回一個空集。該功能可用于分布式數(shù)據(jù)庫設計,數(shù)據(jù)自動復制,但不是本地存儲。

//數(shù)據(jù)庫的內(nèi)容要同步到其他數(shù)據(jù)庫中(數(shù)據(jù)庫的數(shù)量大于1),這樣有自動備份的功能,主服務器宕機,備用的就可以正常的起來使用。主服務器會負擔其壓力(訪問和同步的壓力),會造成系統(tǒng)瓶頸。可以讓其負載到一臺機器上,減輕其壓力。中間的那臺服務器不是存儲到磁盤中,使用blackhole他的數(shù)據(jù)在內(nèi)存中放著(斷電就丟了),傳輸?shù)狡渌胤健?/p>

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容