Mysql 儲存引擎

2021-04-06 20:03:46 字數 1456 閱讀 7193

儲存引擎

mysql支援許多不同的儲存引擎,有時候也稱作**型別。資料庫每個表可以有不同的儲存引擎

,而且可以輕鬆地對它們進行轉換。

create table tablename type=typename

可能的**型別包括:

1  myisam--這是預設型別,它是基於傳統的isam型別,isam是indexed sequential access method(有索引的順序訪問方法)的縮寫,它是儲存記錄和檔案的標準方法。與其它儲存引擎相比較,myisam具有和修復**的大多數工具。 myisam**可以被壓縮,而且它們支援全文搜

索。它們不是事務安全的(關於事務的概念,稍後會講),而且也不支援外來鍵。

2 isam--如上所描述的。isam**的使用已經被廢棄了。

3 memory(也就是以前的heap)--該類的表儲存在記憶體中,表的索引是雜湊分布的。這使

得memory**非常快,但是如果發生崩潰,資料將丟失。這些特性使得memory表非常適合保

存臨時資料或者派生的資料。應該在create table語句中指定max_rows,否則這些錶可

能會吞噬所有的記憶體。同樣,它們也不能具有blob、text或auto increment列。

4 merge--這些表允許你為了查詢的目的,把myisam表的集合作為乙個單個表。因此,你

可在某些操作中避開最大檔案大小限制。

5 bdb--這種型別的表是事務安全的,也就是說,它們可以提供commit秋rollback功能

,但使用起來比myisam表速度慢,但是可以提供使用事務的所有優點。這些**都是基於

berkeley db的。

6 innodb--這種型別的表是事務安全的。它與bdb型別具有相同的特性。它們還支援外來鍵。

innodb**速度很快,具有比bdb還豐富的特性,因此如果需要乙個事務安全的儲存引擎,

建議使用它。

在大多數web應用程式中,通常都會使用myisam或innodb**或者二者的結合。

當對乙個**使用大量的select或insert語句(或者二者的結合)時,應該使用myisam

**,因為在執行這兩種命令時,myisam是最快的。對於許多web應用程式(例如分類)來說

,myisam是最佳選擇。如果需要全文搜尋功能,也應該使用myisam。當事務非常重要(例如存

應該使用innldb.對於臨時**或要是實現檢視,可以使用memory**。如果需要處理大量的myisam**,可以使用merge**。

使用alter table語句,可以在建立**後修改**的型別,如下所示:

alter table tablename type=typename;

事務事務是確保資料庫一致的機制,尤其是在發生錯誤或伺服器崩潰情況下確保一致的機制。

事務是乙個或一系列的查詢,這些查詢可以保證能夠在資料庫中作為乙個整體全部執行或者全部

不執行。這樣,資料庫才能在無論任務是否完成的情況下保持一致狀態。

mysql儲存引擎 mysql儲存引擎簡介

精品推薦 什麼是儲存引擎 mysql儲存引擎是資料庫如何儲存資料 怎樣建立索引以及如何查詢更新資料等技術的實現方法,資料通過使用不同的技術儲存在檔案中,使用不同的儲存機制 索引方式來提供不同的功能。在mysql這種關係型資料中心來說,資料是以表的方式來儲存的,因此,簡單點來說,儲存引擎就是儲存和操作...

mysql個儲存引擎 MySQL儲存引擎

mysql資料庫的體系架構如下圖所示 從上圖中可以看出,mysql主要分為以下幾個元件 連線池元件 管理服務和工具元件 sql介面元件 分析器元件 優化器元件 緩衝元件 外掛程式式儲存引擎 物理檔案 儲存引擎 其實就是指定表如何儲存資料,如何為儲存的資料建立索引以及如何更新 查詢資料等技術實現的方法...

mysql儲存引擎模式 mysql儲存引擎

mysql資料庫的體系架構如下圖所示 從上圖中可以看出,mysql主要分為以下幾個元件 連線池元件 管理服務和工具元件 sql介面元件 分析器元件 優化器元件 緩衝元件 外掛程式式儲存引擎 物理檔案 一 儲存引擎 儲存引擎 其實就是指定 表 如何儲存資料,如何為儲存的資料 建立索引以及 如何更新,查...