默認(rèn)MyISAM的表會(huì)在磁盤(pán)中產(chǎn)生3個(gè)文件:.frm(表結(jié)構(gòu)文件)、.MYD(數(shù)據(jù)文件)、.MYI(索引文件)
可以在創(chuàng)建的時(shí)候指定數(shù)據(jù)文件和索引文件的存儲(chǔ)位置,只有MyISAM表支持:
- DATA DIRECTORY [=] 數(shù)據(jù)保存的絕對(duì)路徑
- INDEX DIRECTORY [=] 索引文件的絕對(duì)路徑
MyISAM單表最大支持的數(shù)據(jù)量為2的64次方跳記錄
每個(gè)表最多可以建立64個(gè)索引
如果是復(fù)合索引,每個(gè)復(fù)合索引最多包含16個(gè)列,索引值最大長(zhǎng)度是1000B
MyISAM引擎的存儲(chǔ)格式:
- 定長(zhǎng)(FIXED 靜態(tài)) :是指字段不包含VARCHAR/TEXT/BLOB
- 動(dòng)態(tài)(DYNAMIC) :只要字段中包含了VARCHAR/TEXT/BLOB
- 壓縮(COMPRESSED):muisampack創(chuàng)建
InnoDB存儲(chǔ)引擎:
設(shè)計(jì)遵循ACID模型,支持事務(wù),具有從服務(wù)崩潰中恢復(fù)的能力,能夠最大限度保護(hù)用戶(hù)的數(shù)據(jù)
支持行級(jí)鎖,可以提升多用戶(hù)并發(fā)時(shí)的讀寫(xiě)性能
InnoDB擁有自己獨(dú)立的緩沖池,常用的數(shù)據(jù)和索引都在緩存中
對(duì)于INSERT、UPDATE、DELETE操作,InnoDB會(huì)使用一種change buffering的機(jī)制來(lái)自動(dòng)優(yōu)化,還可以提供一致性的讀,并且還能夠緩存變更的數(shù)據(jù),減少磁盤(pán)I/O,提高性能
創(chuàng)建InnoDB表之后會(huì)產(chǎn)生兩個(gè)文件:
- .frm表結(jié)構(gòu)文件
- .ibd 數(shù)據(jù)和索引存儲(chǔ)表空間中
所有的表都需要?jiǎng)?chuàng)建主鍵,最好是配合上AUTO_INCREMENT,也可以放到經(jīng)常查詢(xún)的列作為主鍵
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 詳解MySQL InnoDB存儲(chǔ)引擎的內(nèi)存管理
- 關(guān)于MySQL Memory存儲(chǔ)引擎的相關(guān)知識(shí)
- 詳解mysql中的存儲(chǔ)引擎
- 簡(jiǎn)述MySQL InnoDB存儲(chǔ)引擎
- MySql 存儲(chǔ)引擎和索引相關(guān)知識(shí)總結(jié)
- MySQL 學(xué)習(xí)總結(jié) 之 初步了解 InnoDB 存儲(chǔ)引擎的架構(gòu)設(shè)計(jì)
- 淺談MySQL中四種常用存儲(chǔ)引擎
- MySQL高級(jí)學(xué)習(xí)筆記(三):Mysql邏輯架構(gòu)介紹、mysql存儲(chǔ)引擎詳解
- MySQL存儲(chǔ)引擎InnoDB的配置與使用的講解
- MySQL存儲(chǔ)引擎MyISAM與InnoDB區(qū)別總結(jié)整理
- MySQL 常見(jiàn)存儲(chǔ)引擎的優(yōu)劣