天天看點

mysql-存儲引擎

1.存儲引擎

完整的建表語句:

CREATE TABLE <code>dept</code> (

<code>DEPTNO</code> int(2) NOT NULL,

<code>DNAME</code> varchar(14) DEFAULT NULL,

<code>LOC</code> varchar(13) DEFAULT NULL,

PRIMARY KEY (<code>DEPTNO</code>)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

InnoDB是存儲引擎

show engines \G; 檢視mysql支援的存儲引擎

(1)myisam存儲引擎,不支援事務

使用這種引擎,一張表由三個檔案組成。

.frm(存儲表結構),.myd(存儲資料),.myi(存儲索引)

特點:節省空間,可被壓縮。可以轉換為隻讀表,檢索效率高

(2)innodb

這種存儲引擎支援事務,比較安全,有行級鎖,外鍵

表的結構存儲在.frm,資料存儲在tablespace中。

無法被壓縮,不能轉換為為隻讀檔案

如果資料庫崩潰提供自動恢複機制。

支援級聯删除,級聯更新。

(3)memory

這種存儲引擎資料索引都是在記憶體中的書讀非常快,但是不支援事務,不安全。