插件式存储引擎是MySQL数据库最重要的特性之一,用户可以根据应用的需要选择如何存储和索引数据,是否使用事务等。
MySQL默认支持多种存储引擎,包括MyISAM,InnoDB,BDB,MEMORY,MERGE,EXAMPLE,NDB Cluster,ARCHIVE,CSV,BALCKHOLE,FEDERATED等
其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表
创建新表时如果不指定存储引擎,那么系统就会使用默认存储引擎。
MySQL5.5之前的默认存储引擎是MyISAM,5.5之后改为InnoDB
查看当前的默认存储引擎
SHOW VARIABLES LIKE 'table_type'
查询当前数据库支持的存储引擎
SHOW ENGINES G
SHOW VARIABLES LIKE 'have%'
创建新表的时候,可以通过增加ENGINE关键字设置新建表的存储引擎。
CREATE TABLE table_name (
...
) ENGINE = engine_name
修改一存在的表的存储引擎
ALTER TABLE table_name
ENGINE = engine_name