MyISAM和InnoDB的區別

2021-10-03 02:41:01 字數 630 閱讀 5015

關於資料庫引擎

innodb 預設使用~,現在也一樣,包括8版本的

myisam 早些年使用的 5.5以上的

myisam

innodb

事務支援

不支援支援

資料行鎖定

不支援支援

外來鍵約束

不支援支援

全文索引

支援不支援

表空間的大小

較小較大,約為2倍myisam

常規使用操作:

在物理空間存在的位置

所有的資料庫檔案都存在 data 目錄下,乙個資料夾就對應乙個資料庫

本質還是檔案儲存!

mysql 引擎在物理檔案上的區別

設定資料庫表的字符集編碼

charset=utf8

不設定的話,會是mysql預設的字符集編碼~(不支援中文!)

mysql的預設編碼是latin1,不支援中文,但可以修改:

第一種就是創表的時候就修改,charset=utf8

第二種:在my.ini中, 配置預設的編碼,但不建議,因為第一種是sql上的修改換台電腦也能跑,但第二種是物理上的修改,如果那個人沒有這句話,那涼涼,不是中文了。

character-set-server=utf8

MySQL中MyISAM與InnoDB區別

mysql中myisam與innodb區別 myisam innodb 事物處理 不支援支援 外來鍵不支援 支援行鎖 不支援支援 全文索引 支援不支援 表的具體行數 儲存表的具體行數 掃瞄表來計算行數 delete表時 先drop表,然後重建表 一行一行的刪除 索引和資料 分開的,並且索引是有壓縮的...

MySQL中MyISAM與InnoDB區別及選擇

innodb 支援事務處理等 不加鎖讀取 支援外來鍵 支援行鎖 不支援fulltext型別的索引 不儲存表的具體行數,掃瞄表來計算有多少行 delete 表時,是一行一行的刪除 innodb 把資料和索引存放在表空間裡面 跨平台可直接拷貝使用 innodb中必須包含auto increment型別欄...

MySQL中MyISAM與InnoDB區別及選擇

支援事務處理等 不加鎖讀取 支援外來鍵 支援行鎖 不支援fulltext型別的索引 不儲存表的具體行數,掃瞄表來計算有多少行 delete 表時,是一行一行的刪除 innodb 把資料和索引存放在表空間裡面 跨平台可直接拷貝使用 innodb中必須包含auto increment型別欄位的索引 很難...