国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

MySQL 常見存儲(chǔ)引擎的優(yōu)劣

瀏覽:121日期:2023-10-02 12:38:31
目錄查看所有存儲(chǔ)引擎InnoDB 存儲(chǔ)引擎MyISAM 存儲(chǔ)引擎MEMORY 存儲(chǔ)引擎查看所有存儲(chǔ)引擎

我們可以通過 show engines 命令來看到我們的 mysql server 提供了哪些引擎:

show engines;+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+| Engine | Support | Comment | Transactions | XA | Savepoints |+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES|| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO || MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO || BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO || MyISAM | YES | MyISAM storage engine | NO | NO | NO || CSV| YES | CSV storage engine | NO | NO | NO || ARCHIVE | YES | Archive storage engine | NO | NO | NO || PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO || FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+9 rows in set (0.00 sec)InnoDB 存儲(chǔ)引擎

InnoDB 是事務(wù)性數(shù)據(jù)庫(kù)的首選引擎,支持事務(wù)安全表(ACID),支持行鎖定和外鍵。MySQL5.5.5 之后,InnoDB 作為默認(rèn)存儲(chǔ)引擎。InnoDB 主要特性有:

InnoDB 給 MySQL 提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全(ACID 兼容)存儲(chǔ)引擎。InnoDB 鎖定在行級(jí)并且也在 SELECT 語句中提供一個(gè)類似 Oracle 的非鎖定讀。這些功能增加了多用戶部署和性能。在 SQL 查詢中,可以自由地將 InnoDB 類型的表與其他 MySQL 的表的類型混合起來,甚至在同一個(gè)查詢中也可以混合。 InnoDB 是為處理巨大數(shù)據(jù)量所設(shè)計(jì)的性能為重的,它的 CPU 效率可能是任何其他基于磁盤的關(guān)系數(shù)據(jù)庫(kù)引擎所不能匹敵的。 InnoDB 存儲(chǔ)引擎完全與 MySQL 服務(wù)器整合,InnoDB 存儲(chǔ)引擎在主內(nèi)存中維持了自己的緩沖池來緩存數(shù)據(jù)和索引。InnoDB 將它的表和索引存在一個(gè)邏輯表空間中,表空間可以包含數(shù)個(gè)文件(或原始磁盤分區(qū))。這與 MyISAM 表不同,比如在 MyISAM 表中每個(gè)表被存在分離的文件中。InnoDB 表可以是任何尺寸,即使在文件尺寸被限制在 2GB 的操作系統(tǒng)上。 InnoDB 支持外鍵完整性約束(FOREIGN KEY)。存儲(chǔ)表中的數(shù)據(jù)時(shí),每張表的存儲(chǔ)都按主鍵順序存放,如果沒有顯式在表定義時(shí)制定主鍵,InnoDB 會(huì)為每一行生成一個(gè) 6B 的 ROWID,并以此作為主鍵。 InnoDB 被用在眾多需要高性能的大型數(shù)據(jù)庫(kù)站點(diǎn)上。 InnoDB 不創(chuàng)建目錄,使用 InnoDB 時(shí),MySQL 將在 MySQL 數(shù)據(jù)目錄下創(chuàng)建一個(gè)名為 ibdata1 的 10MB 大小的自動(dòng)擴(kuò)展數(shù)據(jù)文件,以及兩個(gè)名為 ib_logfile0 和 ib_logfile1 的 5MB 大小的日志文件。 MyISAM 存儲(chǔ)引擎

MyISAM 是基于 ISAM 的存儲(chǔ)引擎,并對(duì)其進(jìn)行擴(kuò)展。它是在 Web、數(shù)據(jù)存儲(chǔ)和其他應(yīng)用環(huán)境下最常使用的存儲(chǔ)引擎之一。MyISAM 擁有較高的插入、查詢速度,但不支持事務(wù)。在 MySQL5.5.5 之前的版本中,MyISAM 是默認(rèn)存儲(chǔ)引擎。MyISAM 主要特性有:

大文件(達(dá) 63 位文件長(zhǎng)度)在支持大文件的文件系統(tǒng)和操作系統(tǒng)上被支持。 當(dāng)把刪除、更新及插入操作混合使用的時(shí)候,動(dòng)態(tài)尺寸的行產(chǎn)生更少碎片。這要通過合并相鄰被刪除的塊,以及若下一個(gè)塊被刪除,就擴(kuò)展到下一塊來自動(dòng)完成。 每個(gè) MyISAM 表最大索引數(shù)是 64,這可以通過重新編譯來改變。每個(gè)索引最大的列數(shù)是 16 個(gè)。 最大的鍵長(zhǎng)度是 1000B,這也可以通過編譯來改變。對(duì)于鍵長(zhǎng)度超過 250B 的情況,一個(gè)超過 1024B 的鍵將被用上。 BLOB 和 TEXT 列可以被索引。 NULL 值被允許在索引的列中。這個(gè)值占每個(gè)鍵的 0-1 個(gè)字節(jié)。 所有數(shù)字鍵值以高字節(jié)優(yōu)先被存儲(chǔ)以允許一個(gè)更高的索引壓縮。 每表一個(gè) AUTO_INCREMENT 列的內(nèi)部處理。MyISAM 為 INSERT 和 UPDATE 操作自動(dòng)更新這一列。這使得 AUTO_INCREMENT 列更快(至少 10%)。在序列項(xiàng)的值被刪除之后就不能再利用。 可以把數(shù)據(jù)文件和索引文件放在不同目錄。 每個(gè)字符列可以有不同的字符集。 有 VARCHAR 的表可以固定或動(dòng)態(tài)記錄長(zhǎng)度。 VARCHAR 和 CHAR 列可以多達(dá) 64KB。 使用 MyISAM 引擎創(chuàng)建數(shù)據(jù)庫(kù),將產(chǎn)生 3 個(gè)文件。文件的名字以表的名字開始,擴(kuò)展名代表了文件的類型:frm 文件存儲(chǔ)表定義,myd 代表數(shù)據(jù)文件,myi 代表索引文件。 MEMORY 存儲(chǔ)引擎

MEMORY 存儲(chǔ)引擎將表中的數(shù)據(jù)存儲(chǔ)到內(nèi)存中,為查詢和引用其他表數(shù)據(jù)提供快速訪問。MEMORY 主要特性有:

MEMORY 表的每個(gè)表可以有多達(dá) 32 個(gè)索引,每個(gè)索引 16 列,以及 500B 的最大鍵長(zhǎng)度。 MEMORY 存儲(chǔ)引擎執(zhí)行 HASH 和 BTREE 索引。 可以在一個(gè) MEMORY 表中有非唯一鍵。 MEMORY 表使用一個(gè)固定的記錄長(zhǎng)度格式。 MEMORY 不支持 BLOG 或 TEXT 列。 MEMORY 支持 AUTO_INCREMENT 列和對(duì)可包含 NULL 值的列的索引。 MEMORY 表在所有客戶端之間共享(就像其他任何非 TEMPORARY 表)。 MEMORY 表內(nèi)容被存在內(nèi)存中,內(nèi)存是 MEMORY 表和服務(wù)器在查詢處理時(shí)的空閑中創(chuàng)建的內(nèi)部表共享的。 當(dāng)不再需要 MEMORY 表的內(nèi)容時(shí),要釋放被 MEMORY 表使用的內(nèi)存,應(yīng)該執(zhí)行 DELETE FROM 或 TRUNCATE TABLE,或者刪除整個(gè)表(用 DROP TABLE)。

以上就是MySQL 常見存儲(chǔ)引擎的優(yōu)劣的詳細(xì)內(nèi)容,更多關(guān)于MySQL 存儲(chǔ)引擎的優(yōu)劣的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 日韩黄在线观看免费视频 | 欧美精品伊人久久 | 欧美午夜视频在线 | 男女视频免费观看 | 女人精aaaa片一级毛片女女 | 中文精品99久久国产 | 日韩中文字幕网 | 日本伊人精品一区二区三区 | 中文字幕二区三区 | 免费一级欧美片片线观看 | 国产日韩在线播放 | 久久久久成人精品一区二区 | 99精品高清视频一区二区 | mm在线视频免费看 | 日韩精品视频一区二区三区 | 免费中文字幕在线 | 91国语精品自产拍在线观看一 | 综合久久一区二区三区 | 午夜爽爽| 国产片18在线观看 | wwwxxxx欧美| 欧美成人特黄级毛片 | 中文字幕综合在线 | 加勒比一本一道在线 | 欧美三级免费 | 欧美黄网站| 八戒午夜精品视频在线观看 | 欧美精品不卡 | 国产精品成人久久久久 | 日韩欧美a级高清毛片 | 国内成人精品亚洲日本语音 | 久久久精品免费观看 | 亚洲欧美日韩国产精品一区 | 99爱在线精品视频网站 | 国产视频高清在线观看 | 欧美成人日韩 | 国内精品久久久久影院不卡 | 日韩毛片 | 亚洲成人免费 | 亚洲社区在线 | 亚洲免费看片 |