資料庫型別Innodb和MyIsam 預設

2021-08-02 21:08:41 字數 741 閱讀 5101

1. innodb, bob    -support

myisam           -not support(default)

設定語法:

create table customer(id int,name,varchar(30)) type=innodb;

oralter table customer type=innodb;

2.mysql

資料庫分為innodb和myisam兩類。兩者最主要的區別是:innodb支援事務處理、外來鍵和行級鎖.而myisam不支援,所以如果cud比較頻繁或要求事務一致性的,使用innodb比較好,反之使用myisam比較好。具體區別如下:

1、索引:myisam的索引和資料是分開的,並且索引是有壓縮的,而innodb是索引和資料放在一起,且沒有使用壓縮,因而innodb比myisam體積更大。myisam每張表都包括三種檔案:表定義檔案(.frm)、資料檔案(.myd)和索引檔案(.myi),而innodb通常許多表儲存在同乙個檔案中。此外,如果表資料非常大,通常也使用myisam。

2、innodb不支援fulltext型別的索引。

3、對於auto_increment型別的字段,innodb中必須單獨建索引,而在myisam中可以和其他字段一起建立聯合索引。

4、沒有where的select count(*):myisam始終保留一張表的行數,因此這條語句幾乎瞬間就可以執行完,而innodb會一行行的累加。

5、鎖:myisam表鎖,innodb行鎖

資料庫引擎 InnoDB和MyISAM

innodb是mysql預設的儲存引擎 通過命令列 mysql show engine可以檢視mysql支援的引擎。在mac下 mysql安裝在 usr local mysql 啟動sql usr local mysql 5.6.40 macos10 13 x86 64 bin mysql u ro...

關於資料庫引擎InnoDB和Myisam區別

一生熱愛 回頭太難。在mysql5.5之前,預設使用的是myisam引擎,5.5之後,預設使用innodb引擎。關於二者區別一直是重要的問題,選擇合適的資料庫引擎對於開發的幫助是巨大的。myisam不支援事務,因此在開發中需要使用事務的優先選擇innodb,況且在需求越來越複雜的時代,事務按理說是必...

資料庫引擎MyISAM和Innodb對比與說明

它們是資料的一種引擎,作用就是幫助使用者管理資料庫,不用的引擎就代表著不同的管理方式與特點,也就意味著在資料的許多方面,例如索引的管理,事務等方面都有不同。mysql資料庫在5.5版本以前採用的是myisam的引擎,不過在此之後預設採用的是innodb引擎,二者之間各有優劣,適用於不同的場景,不過在...