基础
存储引擎是指存储数据,建立索引,查询和更新数据等技术的实现方式。Oracle,Sql Server等数据库只有一种存储引擎,而MySQL提供了多种存储引擎的选择。因为MySQL存储引擎是插件式的,所以用户可以根据需要使用最优的存储引擎,甚至编写自己的存储引擎。
MySQL5.0支持的存储引擎包含:InnoDB、MyISAM、BDB、MEMORY、MERGE、EXAMPLE、NDB Cluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其他存储引擎是非事务安全表。
查看MySQL数据库默认的存储引擎:
mysql> show variables like '%storage_engine%';
+----------------------------------+--------+
| Variable_name | Value |
+----------------------------------+--------+
| default_storage_engine | InnoDB |
| default_tmp_storage_engine | InnoDB |
| disabled_storage_engines | |
| internal_tmp_disk_storage_engine | InnoDB |
+----------------------------------+--------+
4 rows in set (0.00 sec)
查看当前数据库支持的存储引擎:
mysql> show engines;
+--------------------+---------+------------